スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

日付について

8桁で表された文字列を、日付に変更する方法
2017/4/1が 20170401という文字列になっている場合
=TEXT(セル, "0000!/00!/00") * 1
という関数でシリアル値にすることが可能。
42826
日付じゃない?いえいえ、セルの表示形式で設定すればちゃんと日付であることがわかります。
20170401でもかまわないというかもしれませんが、
文字列では、1日前の計算ができないじゃないですかねー。
スポンサーサイト

児童手当の所得って...

児童手当の書類って、ほんとわかりにくい。

まず、税金がわかりにくい。(学んだわけではない。専門家ではない。念のため)
所得税から
 年間の収入から、所得を算出する。
さらに所得から所得控除額(社保の自己負担分とか)を控除して、課税所得を算出する。
課税所得に税率かけて、所得税が計算される
(給与所得者はここで年末調整の還付金があったりする。)
そして、給与支払報告書という、一見源泉徴収票のようだけど、マイナンバーが書かれた紙が、職場から市町村に送られる。(書かれた金額は源泉徴収票と同じ)
もろもろの収入の情報も集められる。法定調書が税務署だったり市町村だったりに送られる。
また自営業の方とか、給与収入者でも、確定申告とかをやって、所得税がはっきりするのはそのとき。
この情報も、市町村に送られて、そこで 市町村で、住民税を課税する運びである。

前年の12月31日の~なんていう文言が出てくるのは、税の計算が年末を基準としているからであろう。

半年もたって、扶養親族が...といってもその間に子供が生まれてることも、住所を移している人もいるので、児童手当の書類ってほんとにもーって感じがする。
扶養親族等の数は、税法上の控除対象配偶者及び扶養親族(施設入所等児童を除く。以下、「扶養親族等」という。)並びに扶養親族等でない児童で、前年の12月31日において生計を維持したものの数をいう。

扶養親族等の数とは、12月末に 控除対象配偶者、扶養控除および16歳未満の扶養親族のうち申告のあったものの合計人数。
例えば、夫婦共稼ぎで、初めての子供が3月に生まれた場合は、扶養親族等は0になる...と思われる。


所得とは
自営業の方  → 収入から必要経費を差し引いた額(申告所得額)
給与のみの方 → 源泉徴収票の給与所得控除後の金額(給与収入ではありません)

で、児童手当の場合は、所得制限があります。
所得をそのまま見るのではなくて、一律80,000円を控除した額で審査します。
そのうえ医療費・寡婦・障害・小規模企業控除などもあるそうです。
児童手当法施行令第3条第1項、第2項
扶養親族等の人数
0人 6,220,000円
1人 6,600,000円
2人 6,980,000円
3人 7,360,000円
4人 7,740,000円
5人 8,120,000円
ということです。


課税所得にしてくれたら、話は簡単なんだんだけどねぇ^^;

0歳から3歳未満は一人あたり一律15,000円
3歳から小学校修了前の第1子・第2子は一人あたり10,000円
3歳から小学校修了前の第3子以降は一人あたり15,000円
中学生は一人あたり一律10,000円 
限度以上 は5,000円(特例給付)

なお、支払時期については、毎年6月(2月分~5月分)、10月(6月分~9月分)、2月(10月分~1月分)。
※ 「第3子以降」とは、高校卒業まで(18歳の誕生日後の最初の3月31日まで)の養育しているお子さんのうち、3番目以降をいいます。

AGREEGATE

エクセルが新しくなっても、昔の関数しか知らない。
えっ。こんな機能があったのかと、思うこともしばしば。

エラー値を無視して、集計できるという関数、AGREEGATEもそのひとつ、なんだけど。
AGGREGATE(集計方法, オプション, 範囲 1, [範囲 2], …)らしい。

覚えられる気がしません....^^;;;

=AGGREGATE(9,3,A1:A11)ってすると
非表示や、エラーを無視した合計値が表示されるらしい。

vbaで書き換え

ある範囲(仮にA18:J18とA21:J21)の利用回数が10回未満の場合に、「出席」の文字を「基準未満」に書き換える。
ワークシート関数を使用。出席の文字を範囲中から見つけて、書き換える。

利用回数 = WorksheetFunction.CountIf(ActiveSheet.Range("A18:j18", "A21:j21"), "出席")
MsgBox "期間の、" & 利用回数 & "件です。", vbInformation

If 利用回数 < 5 Then

For 行 = 18 To 21 Step 3
For 列 = 1 To 10
If Cells(行, 列) = "出席" Then
Cells(行, 列) = Replace(Cells(行, 列), "出席", "基準未満")
End If
Next 列
Next 行

minecraftをさわってみた



長く遊んでいたネットゲームから足を洗った。
理由は
結局「飽きた」ということかもしれない。

流れるように洗練されたゲームにも入り込めない。
新しいルールを覚え、その世界観を取り込む余力もない。

のでちょっとカクカクした画面を眺めてみたくなった....。
楽しめるかな~。

重複したデータの削除(vba)

おまけ
Sub Macro1()
'
'単純に重複を消す (上の価が正しい)

ActiveSheet.UsedRange.RemoveDuplicates Columns:=Array(1), Header:=xlYes



End Sub


Sub test()

'下の行に同じ値(2列目と3列目)があれば行ごと削除する(下の値で上書きする)

Dim i, j As Integer


For i = Cells(Rows.Count, 1).End(xlUp).Row To 2 Step -1
MsgBox Cells(i, 3).Value
For j = i + 1 To Cells(Rows.Count, 1).End(xlUp).Row
If Cells(i, 2).Value & Cells(i, 3).Value = Cells(j, 2).Value & Cells(j, 3).Value Then

Rows(i).Delete


End If

Next j
Next i

End Sub

重複したデータの削除

表0122
重複データがある場合に、どうするか。
データから「重複の削除」を選択
表01222
すると、チェックする項目が現れます。
表01223
OKで完了!

Sub Macro1()
ActiveSheet.UsedRange.RemoveDuplicates Columns:=Array(1, 2, 3), Header:=xlYes
End Sub

の3行でもOK!
Range("A1:C25").RemoveDuplicates Columns:=Array(1, 2, 3), Header:=xlYesと指示してもOK。
名前だけならArray(3)で。

チョットしたメモ
エラー回避
On Error Resume Next

全ての行を表示
Rows.Hidden = False
全ての列を表示
Columns.Hidden = False

ブックをアクティブ
Workbooks(1).Activate

印刷プレビューを表示
WorkSheets(1).PrintPreview

VBA高速化
Application.ScreenUpdating = False’画面更新しない
Application.EnableEvents = False'イベントを通知しない
Application.Calculation = xlCalculationManual’計算しない

そして、終わりに
Application.ScreenUpdating = True
Application.EnableEvents = True
Application.Calculation = xlCalculationAutomatic

を入れて戻します。

エクセルの表を直してみる(6)

それで、全体は for nextでくくり、
日付のある場所だけにしたかったのが、たまたま隣の列の条件で、空白でないところだったので、利用。
(いい加減だなぁ...)
A列の幅を少し広くしたかったので、Autofitを使う。
以上!



For 行 = Cells(1, 列).End(xlDown).Row To Cells(Rows.Count, 列).End(xlUp).Row

If Cells(行, 列 + 1) <> "" Then



End If

Next 行
Columns(列).AutoFit '列幅をみなおし。


End Sub

エクセルの表を直してみる(5)

ここから、力業になってて。どうなんだろーか。適当すぎる...。

とりあえず、DateAddというのがあって、-1っていうのは、1年前の年にするってこと。
2017年4月5日を2016年4月5日に修正しています。
今が12月にその年度の4月をする場合に、修正はいらないので
If Month(Date) < 4 Then '今が1,2,3月の場合に
を満たさないのでそのまま。

今が1月でその年度の4月をする場合に、2017年4月になってしまったのを2016年4月にします。
If Month(Date) < 4 Then '今が1,2,3月の場合に
  If Month(Cells(行, 列)) > 3 Then '該当のセルの月が4から12であって
If Year(Cells(行, 列)) >= Year(Date) Then '該当のセルの年が、今より大きいか等しい場合に

大きいってありえないのだけど、「等しければ(2017=2017)」前年にするってやったら
小さくても前年にやっちゃったんだよねー。
Ifは全部end ifで閉じていきます。


If Month(Date) < 4 Then '今が1,2,3月の場合に

If Month(Cells(行, 列)) > 3 Then '該当のセルの月が4から12であって

If Year(Cells(行, 列)) >= Year(Date) Then '該当のセルの年が、今より大きいか等しい場合に

Cells(行, 列).Value = DateAdd("yyyy", -1, Cells(行, 列)) '1年前の日付にする

End If


End If


End If

エクセルの表を直してみる(4)

何行か飛ばしてます。

分割 = Split(Cells(行, 列), "(")
Cells(行, 列) = 分割(0)
まず、split について

データの区切と同じ操作になります。
たとえば4月5日(火)
とあるのを『(』を基準に、分けた場合
「4月5日」と「火)」になります。
「4月5日」が分割(0)
「火)」は分割(1)です。
ここでは「火)」は不要なので 元のセルに「分割(0)」だけを残します。

これで、日付が入るのですが、
「4/5」と、月日だけ入力すると、
Excelは
「今年(入力した年)の4月5日」
と判断します。

年度末なんかに、これをやっちゃうと、1年ずれちゃいます。
2017年4月5日になるんです。

これはあとで修正~。

あと、ついでに、書き換えも説明しますね。

ctrl+Hでやっちゃうほうがはやいけど、ついでにします。
店のある列の「店」を「支店」に書き換えますねっていう関数ですね。

Cells(行, 列 + 1) = Replace(Cells(行, 列 + 1), "店", "支店")

プロフィール

とも

Author:とも
FC2ブログへようこそ!

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
FC2カウンター
検索フォーム
RSSリンクの表示
リンク
QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。