Как импортировать и анализировать ваши банковские выписки в Excel

Поделись сейчас:

В отличие от других, не тратьте слишком много времени и усилий на отслеживание своих расходов. Следуйте этой статье и создайте собственный трекер доходов и расходов. Этот инструмент принимает ваши банковские выписки в формате Excel, а затем читает их, чтобы вы знали, где вы потратили больше.

Давайте подготовим графический интерфейс

На инструмент нужно 3 листа. Переименуйте лист 1 в «Панель управления», лист 2 в «Сводка» и лист 3 в «База данных». На листе «Панель управления» создайте поле, позволяющее пользователю просматривать и загружать историческую банковскую выписку. Чтобы установить теги для каждой транзакции в выписке по счету, вам необходимо установить ключевые слова для каждой вкладки. Как показано на изображении, разделите несколько ключевых слов запятой.Подготовьте графический интерфейс

Давайте сделаем его функциональным

Импортируйте скрипт в новый модульИмпортируйте скрипт в новый модуль. Прикрепите скрипт «Import_Bank_Statement» к кнопке «Import» на листе «Панель управления» и скрипт «Update_Tags» к кнопке «Обновить».

Как это работает?

Добавьте полный путь к выписке по счету и импортируйте ее. Все данные из вашей банковской выписки будут загружены на лист «База данных». Скрипт идентифицирует список тегов, которые вы упомянули на листе «Панель управления». Для каждого перечисленного тега соответствующие ключевые слова считываются в переменную и разделяются с помощью команды 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 удалив поврежденный лист, а затем воссоздав его в той же книге.

Об авторе:

Ник Випонд — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая поврежденное слово и программные продукты для восстановления Outlook. Для получения дополнительной информации посетите www.datanumen.com

Поделись сейчас:

Комментарии закрыты.