Duomenys, duomenys, duomenys – be jų duomenų bazė būtų gana nenaudinga. Tad nieko keisto, kad vienas iš most dažnai užduodami klausimai, susiję su tų duomenų įtraukimu į „Access“ lentelę (-es), yra: kaip palengvinti savo gyvenimą, kai turiu reguliariai importuoti daug (ir daug!) failų? Kadangi tai tokia įprasta užduotis, akivaizdu, kad yra daug būdų, kaip nulupti tą katę, bet čia mes apžvelgsime tik vieną – mano nuomone, lengviausią – ypač jei tai darote reguliariai ar net. numatytą laiką. Šiek tiek planavimo (ir aš turiu omenyje šiek tiek!) ir šiek tiek VBA magijos ir jums bus gerai – skaitykite toliau, kad gautumėtetarted…
Importuoti visus „Excel“ failus į aplanką

Pirmiausia apibrėžkime, ką norime, kad kodas veiktų:
„Norime importuoti visus failus iš tam tikro aplanko į esamą lentelę – taip pat norime nurodyti, ar failai turi antraštės eilutę, ar ne“
Atrodo pakankamai paprasta, todėl pažvelkime į kodą, kaip tai padaryti:
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
Tikrinama, ar nėra problemų…

Gerai – pirmieji dalykai. Kad kodą būtų galima naudoti įvairiomis aplinkybėmis, prašome nurodyti kelio pavadinimą (kur saugomi failai), lentelės, į kurią norite importuoti šiuos failus, pavadinimą ir ar visi šiame aplanke esantys failai turi antraštę ar ne (ty ar laukų pavadinimai rodomi pirmoje skaičiuoklės eilutėje).
Pastebėsite, kad kodo dalis, kuri ieško failų – Dir(kelias ir „\*.xls“) – prie pateikto kelio prideda pakaitos simbolį ir failo plėtinį. Paminėjau tai, nes būtų labai lengva pakeisti kodą, jei, pavyzdžiui, norėtumėte importuoti tik tuos failus, kurie atitiko tam tikrą pavadinimų tvarką (pvz., visus failus, kurių failo pavadinimo dalis yra „Sausio mėn.“ arba „2017 m. ). Jei norite, netgi galėtumėte pridėti tą filtrą kaip paprogramės iškvietimo parametrą.
Bet kokiu atveju, jei failas atitinka nurodytus kriterijus (šiuo atveju bet koks „.xls“ failas aplanke, kuriame naudojamas ), jis nedelsdamas bando importuoti tą failą naudodamas komandą TransferSpreadsheet.
Kur pakeisti kodą, kad jis atitiktų jūsų poreikius…
Būtent šiuo metu galite pakeisti kodą taip, kad vietoj skaičiuoklės importavimo jis importuotų csv failus (naudodamas komandą „TransferText“) ir kt.
Tada kodas sukasi, kol tame aplanke nebeliks importuotinų failų.
Tai maža kodo dalis, bet aš tikiu, kad ją naudosite vėl ir vėl!
Autoriaus įvadas:
Mitchell Pond yra duomenų atkūrimo ekspertas DataNumen, Inc., kuri yra pasaulyje duomenų atkūrimo technologijų lyderė, įskaitant pataisyti SQL sugadinimą ir Excel atkūrimo programinės įrangos produktai. Norėdami gauti daugiau informacijos, apsilankykite WWW.datanumen.com