Údaje, údaje, údaje - bez nej by bola databáza dosť zbytočná. Nie je teda prekvapením, že jeden z most často kladené otázky, pokiaľ ide o získanie týchto údajov do vašej tabuľky (tabuliek) Accessu - ako si môžem uľahčiť život, keď musím pravidelne importovať veľa (a veľa!) súborov? Pretože je to taká bežná úloha, je zrejmé, že existuje veľa spôsobov, ako pokožku konkrétnej mačky zbaviť, ale tu sa pozrieme iba na jeden - podľa môjho názoru najjednoduchší - najmä ak to robíte pravidelne alebo dokonca plánovaný časový rámec. Trochu plánovania (a tým myslím trochu!) A trocha VBA mágie a budete v pohode - čítajte ďalej a získatetarted ...
Importujú sa všetky súbory programu Excel do priečinka

Najskôr si definujme, čo má kód robiť:
„Chceme importovať všetky súbory z daného priečinka do existujúcej tabuľky - chceme tiež určiť, či majú súbory riadok hlavičky alebo nie“
Zdá sa to dosť jednoduché, preto sa pozrime na kód, ktorý to urobí:
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
Prebieha kontrola problémov ...

Dobre - prvé veci. Aby bol kód čo najviac použiteľný za rôznych okolností, pýtame sa na názov cesty (kde sú súbory uložené), názov tabuľky, do ktorej chcete tieto súbory importovať, a či majú súbory v tomto priečinku všetky hlavička alebo nie (tj. zobrazia sa názvy polí v prvom riadku tabuľky).
Všimnite si, že časť kódu, ktorá vyhľadáva súbory - Dir (cesta a „\ *. Xls“) - pripojí k zadanej ceste zástupný znak a príponu súboru. Uvádzam to, pretože by bolo veľmi ľahké zmeniť kód, ak by ste napríklad chceli importovať iba súbory, ktoré sa zhodujú s konkrétnou konvenciou pomenovania (napr. Všetky súbory, ktoré majú v názve súboru „január“ alebo „2017“. ). Tento filter môžete, ak chcete, dokonca pridať ako parameter do volania podprogramu.
V každom prípade, ak sa súbor zhoduje s danými kritériami (v tomto prípade akýkoľvek súbor „.xls“ v priečinku, ktorý sa v tomto prípade používa), okamžite sa ho pokúsi importovať pomocou príkazu TransferSpreadsheet.
Kde zmeniť kód podľa vašich potrieb ...
V tomto okamihu môžete zmeniť kód tak, aby namiesto importu tabuľky importoval súbory CSV (pomocou príkazu „TransferText“) atď.
Kód sa potom zacykluje, kým v danom priečinku nebudú existovať ďalšie súbory na importovanie.
Je to malý kúsok kódu, ale som si istý, že ten, ktorý znova a znova použijete.
Úvod autora:
Mitchell Pond je expert na obnovu dát v DataNumen, Inc., ktorá je svetovým lídrom v oblasti technológií obnovy dát, vrátane opraviť poškodenie SQL a vynikajúce softvérové produkty na obnovenie. Pre viac informácií navštívte www.datanumen. S