Příspěvekod Kurimak » 15 led 2018 09:59
Už jsem to vyřešil, doplněním deklarací. Děkuji za oba typy. Power Query je však spíše pro tvoření různých sumárních tabulek než pro automatizovaný export. Přesto děkuji.
Public Sub Import_z_Accessu()
Dim Cesta As String
Dim Odkaz As Worksheet
Dim Database As Object
Dim prikaz_SQL As String
Dim rs As Object
Dim Pripona As String
Dim SouboryKtere As String
'Vypnutí překreslování grafiky
Application.ScreenUpdating = False
'Výběr přípony importovaných souborů
Pripona = "*.mdb"
Radek = 1
' Cesta na sešit s makrem, vytvoření objektové proměnné s odkazem na list
Cesta = ActiveWorkbook.Path & "\" & "Import" & "\"
Set Odkaz = Worksheets("Access")
ChDir Cesta
SouboryKtere = Dir(Pripona)
' Vytvoření objektové proměnné spustí Access na pozadí
Dim app As New Access.Application
Do While SouboryKtere <> ""
' Otevření zdrojové databáze a vytvoření její objektové proměnné
app.OpenCurrentDatabase Cesta & SouboryKtere
Set Database = app.CurrentDb
' Příkaz SQL pro výběr sloupců a záznamů z tabulky se zapíše do textové proměnné
prikaz_SQL = "SELECT _Tabulka zdrojových dat_.* FROM [_Tabulka zdrojových dat_]"
' Vytvoření recordsetu s příkazem SQL
Set rs = Database.OpenRecordset(prikaz_SQL)
' Zkopírování vybraných záznamů do sešitu
Odkaz.Cells(Radek, 1).CopyFromRecordset rs
rs.Close
'Přičítání řádků - určení prvního neposaného řádku
Radek = Cells.CurrentRegion.Rows.Count + 1
'Uzavření aktuální databáze
app.CloseCurrentDatabase
SouboryKtere = Dir
Loop
' Ukončení Accessu
app.Quit
'Zapnutí překreslování grafiky
Application.ScreenUpdating = True
MsgBox "Hotovo"
End Sub