Dati, dati, dati — bez tiem datubāze būtu diezgan bezjēdzīga. Tāpēc nav pārsteigums, ka viens no visbiežāk uzdotajiem jautājumiem, runājot par datu iegūšanu Access tabulā(-ās), ir — kā es varu atvieglot savu dzīvi, ja man regulāri jāimportē daudz (un daudz!) failu? Tā kā tas ir tik bieži veicams uzdevums, protams, ir vairāki veidi, kā no tā atbrīvoties, bet šeit mēs aplūkosim tikai vienu — manuprāt, vienkāršāko —, it īpaši, ja to darāt regulāri vai pat ieplānotā laika posmā. Nedaudz plānošanas (un es tiešām domāju nedaudz!) un nedaudz VBA maģijas, un jūs būsiet gatavs — lasiet tālāk, lai sāktu…
Visu Excel failu importēšana mapē
Šajā rakstā mēs aplūkosim vairāku Excel failu importēšanu noteiktā mapē, taču jūs tikpat viegli varētu importēt csv failus utt. - mēs apspriedīsim, kā mainīt kodu, lai īslaicīgi apstrādātu csv failus.
Pirmkārt, definēsim, ko mēs vēlamies darīt kodam:
"Mēs vēlamies importēt visus failus no norādītās mapes esošā tabulā - mēs arī vēlamies norādīt, vai failiem ir galvenes līnija vai nav"
Šķiet, ka tas ir pietiekami vienkāršs, tāpēc apskatīsim kodu, lai to izdarītu:
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
Notiek problēmu meklēšana ...

Labi - pirmās lietas. Lai saglabātu kodu pēc iespējas izmantojamāku dažādos apstākļos, mēs pieprasām ceļa nosaukumu (kur faili tiek glabāti), tās tabulas nosaukumu, kurā vēlaties importēt šos failus, un vai visiem šīs mapes failiem ir vai ne (ti, vai lauku nosaukumi parādās izklājlapas pirmajā rindā).
Jūs ievērosiet, ka tā koda daļa, kas meklē failus - Dir (ceļš un “\ *. Xls”), pievieno aizstājējzīmi un faila paplašinājumu piegādātajam ceļam. Es to pieminēju, jo kodu būtu ļoti viegli mainīt, ja, piemēram, vēlaties importēt tikai failus, kas atbilst noteiktai nosaukšanas konvencijai (piemēram, visus failus, kuru faila nosaukumā ir “Janvāris” vai “2017”. ). Jūs varētu, ja vēlaties, pat pievienot šo filtru kā parametru apakšprogrammas izsaukumam.
Jebkurā gadījumā, ja fails, kas atbilst norādītajiem kritērijiem (jebkurš “.xls” fails mapē, izmantojot šajā gadījumā), tas nekavējoties mēģina importēt šo failu, izmantojot komandu TransferSpreadsheet.
Kur mainīt kodu, lai tas atbilstu jūsu vajadzībām…
Šajā brīdī jūs varat mainīt kodu tā, lai izklājlapas importēšanas vietā tas importētu csv failus (izmantojot komandu “TransferText”) utt.
Pēc tam kods tiek izveidots, līdz tajā mapē vairs nav importējamu failu.
Tas ir mazs koda gabals, taču tāds, kuru jūs atkal un atkal izmantojat, esmu pārliecināts!
Autora ievads:
Mičels Dīķis ir datu atkopšanas eksperts DataNumen, Inc., kas ir pasaules līderis datu atkopšanas tehnoloģiju, tostarp labot SQL korupciju un Excel atkopšanas programmatūras produkti. Lai iegūtu vairāk informācijas, apmeklējiet vietni www.datanumen. Ar