IMPORT Z ACCESSU DO EXCELU

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

Kurimak
nováček
Příspěvky: 17
Registrován: leden 16
Pohlaví: Muž
Stav:
Offline

IMPORT Z ACCESSU DO EXCELU

Příspěvekod Kurimak » 12 led 2018 13:34

Zdravím potřebuji naimportovat větší množství tabulek z Accessu do Excelu.
Mám makro s využitím SQL dotazu. Když ho spustím objeví se hláška Variable not defined.
a označí se v kódu
  1. Set Database = app.CurrentDb

Kód mám přitom podle příručky správně.

  1. Sub Import_mdb()
  2. Dim Cesta As String
  3. Dim Cela_cesta As String
  4. Dim Radek As Long
  5. Dim Pripona As String
  6. Dim SouboryKtere As String
  7. Pripona = "*.mdb"
  8. Radek = 1
  9.  
  10.  
  11.  
  12. Cela_cesta = ActiveWorkbook.Path & "\" & "Import" & "\"
  13.  
  14.  
  15. ChDir Cela_cesta
  16. SouboryKtere = Dir(Pripona)
  17.  
  18.  
  19. Do While SouboryKtere <> ""
  20. MsgBox SouboryKtere
  21. Dim app As New Access.Application
  22. app.OpenCurrentDatabase Cela_cesta & SouboryKtere
  23. Set Database = app.CurrentDb
  24. prikazSQL = "SELECT * FROM _Tabulka zdrojových dat_"
  25. Set rs = Database.OpenRecordset("prikaz_SQL")
  26. Cells(Radek, 1).CopyFromRecordset rs
  27. Radek = Cells.CurrentRegion.Rows.Count + 1
  28. rs.Close
  29. SouboryKtere = Dir
  30. Loop
  31.  
  32.  
  33. End Sub


Nevíte, kde je chyba?

Reklama
Uživatelský avatar
ITCrowd
Tvůrce článků
Guru Level 13.5
Guru Level 13.5
Příspěvky: 23605
Registrován: březen 10
Pohlaví: Muž
Stav:
Offline

Re: IMPORT Z ACCESSU DO EXCELU

Příspěvekod ITCrowd » 12 led 2018 13:56

Deklarace proměnné Database. A až to uděláš, pak se to ozve ještě na rs.
Zkusili jste to vypnout a zapnout? Problémy řeším pouze v tématech. Do SZ mi proto píšete zbytečně.
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router

Kurimak
nováček
Příspěvky: 17
Registrován: leden 16
Pohlaví: Muž
Stav:
Offline

Re: IMPORT Z ACCESSU DO EXCELU

Příspěvekod Kurimak » 12 led 2018 14:10

A jaký typ proměnné bych měl pro Database a rs použít?

Uživatelský avatar
ITCrowd
Tvůrce článků
Guru Level 13.5
Guru Level 13.5
Příspěvky: 23605
Registrován: březen 10
Pohlaví: Muž
Stav:
Offline

Re: IMPORT Z ACCESSU DO EXCELU

Příspěvekod ITCrowd » 12 led 2018 14:26

Pravděpodobně Object. Když ho nastavuješ pomocí Set.
Zkusili jste to vypnout a zapnout? Problémy řeším pouze v tématech. Do SZ mi proto píšete zbytečně.
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router

MePExG
Level 2
Level 2
Příspěvky: 193
Registrován: srpen 16
Pohlaví: Muž
Stav:
Offline

Re: IMPORT Z ACCESSU DO EXCELU

Příspěvekod MePExG » 12 led 2018 17:37

V prípade, že používate od verzie 2010 vyššie (2016) už obsahuje, môžete použiť Power Query (voľne stiahnuteľný doplnok) s ktorým môžete robiť rôzne triky (spájanie, rozkladanie agregácie, filtrácie a iné úpravy [z rôznych zdrojov rôznej veľkosti] bez potreby použitia Access-u) s údajmi.

Kurimak
nováček
Příspěvky: 17
Registrován: leden 16
Pohlaví: Muž
Stav:
Offline

Re: IMPORT Z ACCESSU DO EXCELU

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

Kurimak
nováček
Příspěvky: 17
Registrován: leden 16
Pohlaví: Muž
Stav:
Offline

Re: IMPORT Z ACCESSU DO EXCELU

Příspěvekod Kurimak » 16 led 2018 09:05

Nevěděl by někdo, jak z tabulky v Accessu do Excelu dostanu i záhlaví tabulky. Vše se pomocí SQL zkopíruje v pořádku kromě záhlaví tabulky, které chybí.


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Import PDF do excelu Příloha(y)
    od luko02420 » 13 kvě 2023 11:29 » v Kancelářské balíky
    18
    3575
    od luko02420 Zobrazit poslední příspěvek
    16 kvě 2023 11:27
  • PowerQuery - import dat do sloupců Příloha(y)
    od MK_Vs » 31 říj 2023 10:00 » v Kancelářské balíky
    9
    2122
    od MK_Vs Zobrazit poslední příspěvek
    02 lis 2023 09:26
  • VPS Hosting pro import vlastního VM (proxmox)
    od FIDLIK » 20 říj 2023 21:16 » v Vše ostatní (sw)
    0
    1729
    od FIDLIK Zobrazit poslední příspěvek
    20 říj 2023 21:16
  • Poškozený soubor excelu Příloha(y)
    od Jsimi » 06 úno 2024 22:43 » v Kancelářské balíky
    0
    809
    od Jsimi Zobrazit poslední příspěvek
    06 úno 2024 22:43
  • Promítaní excelu a videa zároveň
    od Marw7_ » 02 čer 2023 15:57 » v Vše ostatní (sw)
    2
    1316
    od X Zobrazit poslední příspěvek
    02 čer 2023 18:06

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 10 hostů