他の人とは異なり、あなたの費用を追跡するのにあまり多くの時間と労力を費やさないでください。 この記事に従って、独自の収入と支出のトラッカーを作成してください。 このツールは、Excel形式の銀行取引明細書を受け入れ、それを読み取って、どこでより多くを費やしたかを知らせます。
GUIを準備しましょう
ツールには3枚必要です。 sheet1の名前を「コントロールパネル」、sheet2の名前を「Summary」、sheet3の名前を「Database」に変更します。 シート「コントロールパネル」で、ユーザーが過去の銀行取引明細書を参照およびアップロードできるようにするフィールドを作成します。 銀行取引明細書の各トランザクションにタグを設定するには、各タブにキーワードを設定する必要があります。 画像に示されているように、複数のキーワードをコンマで区切ります。
機能させましょう

システムを教えてください。
銀行取引明細書のフルパスを追加してインポートします。 銀行取引明細書のすべてのデータは、シート「データベース」に読み込まれます。 スクリプトは、シート「コントロールパネル」で言及したタグのリストを識別します。 リストされたタグごとに、対応するキーワードが変数に読み込まれ、VBAのSPLITコマンドを使用して分割されます。 カンマで区切られたキーワードごとに、スクリプトはデータベース全体をスキャンし、各キーワードに対応する値を識別します。 次に、最終値と合計値が、棒グラフに入力されるシート「概要」で更新されます。
スクリプト:
Sub Import_Bank_Statement()
With Sheets("Database").QueryTables.Add(Connection:= _
"TEXT;" & Sheets("Control Panel").Range("B3").Value _
, Destination:=Sheets("Database").Range("$A$1"))
.Name = "Bank Statement"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 437
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = True
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
End Sub
Sub Update_Tags()
Dim lr As Long
Dim r As Long
Dim v_string() As String
Dim intcount As Long
Dim rindb As Long
Dim lrindb As Long
Dim v_total As Long
lr = Sheets("Control Panel").Range("K" & Rows.Count).End(xlUp).Row
For r = 3 To lr
v_total = 0
v_string = Split(Sheets("Control Panel").Range("L" & r).Value, ",")
For intcount = LBound(v_string) To UBound(v_string)
lrindb = Sheets("Database").Range("A" & Rows.Count).End(xlUp).Row
For rindb = 2 To lrindb
If InStr(UCase(Sheets("Database").Range("B" & rindb).Value), UCase(Trim(v_string(intcount)))) <> 0 Then
v_total = v_total + Sheets("Database").Range("D" & rindb).Value
End If
Next rindb
Next intcount
MsgBox v_total
Sheets("Summary").Range("C" & r + 1).Value = v_total
Next r
End Sub
変更する
このツールは、単一の銀行取引明細書をデータベースにインポートするようになりました。 ツールを変更して、ユーザーがフォルダーを参照および選択し、使用可能なすべての銀行取引明細書をスキャンして、すべてのファイルをデータベースにインポートできるようにすることができます。 シート「概要」を変更して、各月または週のタグと値を表示することもできます。 データベース全体を読み取る代わりに、特定の日付の間の値を読み取るようにマクロを変更できます。
クイックフィックス
シート「概要」が破損している場合は、 Excelを修正 破損したシートを削除してから、同じブックに再作成します。
著者紹介:
Nick Vipondは、のデータ復旧の専門家です。 DataNumen、Inc。は、以下を含むデータ復旧技術の世界的リーダーです。 破損したWord と見通し回復ソフトウェア製品。 詳細については、次のWebサイトをご覧ください。 WWW。datanumen.com