Podatki, podatki, podatki – brez njih bi bila zbirka podatkov precej neuporabna. Zato ni presenetljivo, da je eno najpogostejših vprašanj, ko gre za vnos teh podatkov v Accessovo tabelo (tabele) – kako si lahko olajšam življenje, ko moram redno uvažati veliko (in veliko!) datotek? Ker gre za tako pogosto opravilo, obstaja očitno več načinov, kako odreti to določeno mačko, vendar si bomo tukaj ogledali le enega – po mojem mnenju najlažjega – še posebej, če to počnete redno ali celo načrtovano. Malo načrtovanja (in res mislim malo!) in malo VBA čarovnije in pripravljeni boste – berite dalje, da začnete ...
Uvoz vseh datotek Excel v mapo
V tem članku si bomo ogledali uvoz številnih datotek Excel v določeno mapo, vendar lahko prav tako enostavno uvozite datoteke CSV itd. - Kmalu bomo razpravljali o tem, kako spremeniti kodo za obdelavo datotek CSV.
Najprej določimo, kaj želimo, da koda naredi:
"Vse datoteke iz dane mape želimo uvoziti v obstoječo tabelo - prav tako želimo določiti, ali imajo datoteke vrstico glave ali ne"
Zdi se dovolj preprosto, zato si oglejmo kodo za to:
Sub ImportfromPath(path As String, intoTable As String, hasHeader As Boolean) Dim fileName As String 'Loop through the folder & import each file fileName = Dir(path & "\*.xls") While fileName <> "" DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, intoTable, path & fileName, hasHeader 'check whether there are any more files to import fileName = Dir() Wend End Sub
Preverjanje težav ...

OK - najprej najprej. Da bo koda čim bolj uporabna v različnih okoliščinah, prosimo za ime poti (kjer so datoteke shranjene), ime tabele, v katero želite uvoziti te datoteke, in ali imajo datoteke v tej mapi glava ali ne (tj. ali se imena polj pojavijo v prvi vrstici preglednice).
Opazili boste, da del kode, ki išče datoteke - Dir (pot & "\ *. Xls") - priloženi poti doda nadomestni znak in pripono datoteke. To omenjam, saj bi bilo zelo enostavno spremeniti kodo, če bi na primer želeli uvoziti samo datoteke, ki se ujemajo z določeno konvencijo poimenovanja (npr. Vse datoteke, ki imajo kot ime datoteke »januar« ali »2017«). ). Če bi želeli, bi lahko ta filter celo dodali kot parameter klicu podprograma.
Kakor koli že, če datoteka, ki ustreza danim merilom (v tem primeru katera koli datoteka .xls) v mapi, s pomočjo datoteke takoj poskusi to datoteko uvoziti z ukazom TransferSpreadsheet.
Kje spremeniti kodo, ki ustreza vašim potrebam ...
Na tej točki lahko spremenite kodo, tako da namesto da bi uvozila preglednico, uvozi datoteke csv (z ukazom »TransferText«) itd.
Nato se koda zanka, dokler v tej mapi ni več datotek za uvoz.
To je majhen delček kode, toda tisti, ki ga boste vedno znova uporabljali, sem prepričan!
Uvod avtorja:
Mitchell Pond je strokovnjak za obnovitev podatkov v DataNumen, Inc., ki je vodilna na svetu na področju tehnologij za obnovitev podatkov, vključno z popravilo korupcije SQL in excel programske izdelke za obnovitev. Za več informacij obiščite www.datanumen.com