ここまでのVBAコードです。
Sub 仕訳に変換()
Dim a As Integer
a = 2
Worksheets(“meisai”).Activate
Do Until Cells(a, 1).Value = “”
続きを読む
ここまでのVBAコードです。
Sub 仕訳に変換()
Dim a As Integer
a = 2
Worksheets(“meisai”).Activate
Do Until Cells(a, 1).Value = “”
続きを読む
相手科目の設定で、摘要に登録されているものについては、相手科目が入りましたが、
まだ相手科目が決まっていないものもあります。
これらをつぶしていきます。
続きを読む
前回、入金取引か出金取引かの判別をしました。
今までの処理で会計ソフトにインポートするのに必要な情報のうち、
日付、預金科目の貸借どちらか、金額、摘要です。(金額と摘要は移すだけです。)
ここまでのVBAの処理をまとめてみます。
続きを読む
前回は日付の書式が全て統一されていたので、同じ処理を繰り返せばいいのですが、
今回は、一部は日付形式になっているが、なっていないものと混ざっている場合の処理です。
VBAコードは次の通りです。
Sub 日付変換()
Dim a As Integer
a = 2
Do Until Cells(a, 1).Value = “”
If Right(Cells(a, 1).Value, 1) = “メ” Then
Cells(a, 2).Value = Left(Cells(a, 1).Value, 4) & “/” & Mid(Cells(a, 1).Value, 6, 2) & “/” & Mid(Cells(a, 1).Value, 9, 2)
Else
Cells(a, 2).Value = Cells(a, 1)
End If
a = a + 1
Loop
End Sub
ネットバンキングのデータは、機械がはき出すので、必ず何らかの規則性が存在します。
今回は、日付形式とテキスト形式の違いは、セルの一番右端の値が、”メ”かどうかです。
ですので、VBAコードでは、
If Right(Cells(a, 1).Value, 1) = “メ” Then
テキスト文字の処理
Else
日付の形式の処理
EndIf
としています。
2パターンの処理を解説しましたが、ネットバンキングからはきだした形式が日付形式であればそのまま
使えますが、そうでない場合の方が恐らく多いと思います。
そのときは、面倒ですが、セルを分解してくっつけるというやり方で日付形式に変更します。
一度VBAで変換する仕組みを作ってしまえば、次からは実行するだけで日付形式に変換できます。
変数を使って一度にまとめて日付の形式に変換します。
B列に日付に変換したデータを入れていきます。
続きを読む
今まで一つずつ抜き出して、セルに値を入れてきましたが、これをVBAで一発で日付
に変換します。
Sub 日付変換()
Cells(1, 5).Value = Left(Cells(1, 1).Value, 4) & “/” & Mid(Cells(1, 1).Value, 6, 2) & “/” & Mid(Cells(1, 1).Value, 9, 2)
Cells(3, 5).Value = Mid(Cells(3, 1).Value, 2, 2) + 1988 & “/” & Mid(Cells(3, 1).Value, 5, 2) & “/” & Right(Cells(3, 1).Value, 2)
End Sub
ちなみに、
Cells(1,1)はA1
Cells(3,1)はC1です。
このコードを実行すると、一見日付形式に変更できなさそうなものでも、変換できます。
ネットバンキングのデータをまとめて変換するときは、現金出納帳のときと同様に変数を使って
全ての行を一気に直していきます。
日付の変更の仕方は、まず年・月・日にセルを分解して、
_&_”/”_&_ (_は半角スペース)で繋ぎ直すと覚えて下さい。
Left関数は、文字通り左から何文字抜き出すか指定します。
2013/06/07メ
の年数を抜き出すときは、左から4文字抜き出すので、
Left(A1,4)となります。
続きを読む
ネットバンキングのデータで一番癖がでるのが日付です。
日付に最後にメが付いていたり、
年月日の間に-が入っていたり
このままでは会計ソフトにインポートすることはできません。
続きを読む