Avatar billede sigyn Seniormester
01. oktober 2012 - 13:40 Der er 6 kommentarer og
1 løsning

Importere xlsm fil til Access ved hjælp af makro

Jeg er blevet opdateret fra office2000 til 2007, og det giver ind imellem nogen udfordringer.
Jeg har en del access databaser, som bygger på SAP-udtræk. Det foregår ved at jeg eksporterer mine data fra SAP til Excel, hvor jeg gemmer og opdaterer områdenavne og lignende med makroer. Det har hidtil fungeret fint, men nu har jeg en enkelt tabel, som ramte loftet på de 65.536 rækker. Så har jeg gemt den som en ny tabel med aktive makroer, altså xlsm. Det virker også fint. Men når jeg så vil importere tabellen til Access kommer udfordringen, for der kan jeg tilsyneladende ikke importere i xlsm-format, kun det gamle xls-format eller i xlsx. Men hvis jeg gemmer min fil som xlsx, kan jeg jo ikke bruge mine excel makroer.
Jeg har prøvet at konvertere makroen til VBA, men der fremgår formatet slet ikke af koden.
Nogen bud på, hvordan jeg knækker denne nød ?
Avatar billede supertekst Ekspert
01. oktober 2012 - 14:25 #1
Kan makroen ikke gemme i et acceptabelt filformat?
Avatar billede terry Ekspert
02. oktober 2012 - 09:15 #2
I wasnt aware that there was a limit of 65536 rows in Excel 2007.
Are you sure you are working with a 2007 workbook?
Avatar billede sigyn Seniormester
02. oktober 2012 - 11:58 #3
Grænsen på 65.536 ramte jeg i min gamle fil, som oprindeligt var dannet i excel2000, derfor brugte jeg "gem som" og gemte som Excel projektmappe med aktiverede makroer (xlsm), netop fordi jeg har brug for flere rækker.
Problemet kommer først når jeg vil importere til access, da jeg tilsyneladende ikke kan importere en xlsm-fil

Min konverterede makro ser sådan ud

Function Makro1()
On Error GoTo Makro1_Err

    DoCmd.TransferSpreadsheet acImport, 10, "Test", "Q:\Arinco_Nøgletal_4677\LAB\Produkter\Diverse\Stamdata\FVMB51_2012", True, "FV"


Makro1_Exit:
    Exit Function

Makro1_Err:
    MsgBox Error$
    Resume Makro1_Exit

End Function


Og fejlen jeg får siger : Microsoft Office Access-databaseprogrammet kan ikke finde objektet"q:\........_2012.XLXS".
Kontroller, at objektet findes, og at du har stavet navnet og stien korrekt.
Avatar billede terry Ekspert
02. oktober 2012 - 13:51 #4
Not sure how saving file as xlsm gets around the 65536 rows limit. You could just as well save it as an xlxs file.


But thats anothe issue. I see no problem importing an xlsm file, but yiou need to include the file extension in the file name.

"Q:\Arinco_Nøgletal_4677\LAB\Produkter\Diverse\Stamdata\FVMB51_2012.XLSM"
Avatar billede terry Ekspert
02. oktober 2012 - 13:51 #5
answer
Avatar billede sigyn Seniormester
03. oktober 2012 - 07:44 #6
De 65536 rækker forvirrer vist bare :-) Men årsagen til mit problem var, at i 2000 hed der en excel fil bare xls uanset om der er makroer i eller ej, mens i 2007 er der forskel, xlsx kan jeg ikke bruge med makroer.
Bortset fra det, så hjalp dit forslag, så hermed points:-) og tak for hjælpen
Det undrer mig bare lidt, at access ikke selv skriver .xlsx i den konverterede makro, når det er den, den går efter. Det var jo derfor jeg prøvede, at konvertere makroen.
Avatar billede terry Ekspert
03. oktober 2012 - 19:36 #7
tak
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester