Skirtingai nei kiti, neskirkite per daug laiko ir pastangų savo išlaidoms sekti. Vykdykite šį straipsnį ir sukurkite savo pajamų ir išlaidų stebėjimo priemonę. Šis įrankis priima jūsų banko ataskaitas Excel formatu ir nuskaito jas, kad žinotumėte, kur išleidote daugiau.
Paruoškime GUI
Įrankiui reikia 3 lapų. Pervardykite 1 lapą į „Control Panel“, lapą 2 į „Summary“ ir lapą 3 į „Duomenų bazę“. Lape „Valdymo skydas“ sukurkite lauką, kad vartotojas galėtų naršyti ir įkelti istorinę banko ataskaitą. Norėdami nustatyti kiekvienos operacijos žymas banko ataskaitoje, kiekviename skirtuke turite nustatyti raktinius žodžius. Kaip parodyta paveikslėlyje, kelis raktinius žodžius atskirkite kableliais.
Padarykime jį funkcionalų

Kaip tai veikia?
Pridėkite visą banko ataskaitos kelią ir importuokite. Visi jūsų banko išrašo duomenys bus įkelti į lapą „Duomenų bazė“. Scenarijus identifikuoja žymų, kurias paminėjote lape „Valdymo skydas“, sąrašą. Kiekvienai išvardytai žymai atitinkami raktiniai žodžiai nuskaitomi į kintamąjį ir suskaidomi naudojant VBA komandą SPLIT. Kiekvieno raktinio žodžio, atskirto kableliu, scenarijus nuskaito visą duomenų bazę ir nustato atitinkamą kiekvieno raktinio žodžio reikšmę. Tada galutinė ir bendra vertė atnaujinama lape „Suvestinė“, kuris užpildo juostinę diagramą.
scenarijus:
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
Pakeiskite jį
Dabar įrankis importuoja vieną banko išrašą į duomenų bazę. Galite modifikuoti įrankį, kad vartotojas galėtų naršyti ir pasirinkti aplanką, nuskaityti visas turimas banko ataskaitas ir importuoti visus failus į duomenų bazę. Lapą „Suvestinė“ taip pat galima modifikuoti, kad būtų rodomos kiekvieno mėnesio ar savaitės žymos ir reikšmės. Užuot nuskaitę visą duomenų bazę, makrokomandą galima modifikuoti, kad būtų galima nuskaityti reikšmes tarp konkrečių datų.
Greitas sprendimas
Jei lapas „Santrauka“ sugadintas, galite pabandyti pataisyti Excel ištrindami sugadintą lapą ir vėl sukurdami jį toje pačioje darbaknygėje.
Autoriaus įvadas:
Nickas Vipondas yra duomenų atkūrimo ekspertas DataNumen, Inc., kuri yra pasaulyje duomenų atkūrimo technologijų lyderė, įskaitant sugadintas žodis ir Outlook atkūrimo programinės įrangos produktai. Norėdami gauti daugiau informacijos, apsilankykite WWW.datanumen.com