Avatar billede madiedk Nybegynder
08. september 2007 - 15:07 Der er 4 kommentarer og
1 løsning

destinationsområde ikke på samme ark

Hej

jeg henter noget data ind i excel fra en database og det virker også fint. mit problem er at jeg på ark1 har lavet en knap som jeg har tildelt en makro der henter data ind i ark2. men når jeg kører den så kommer den med en run-time error der siger "Destinationsområde er ikke på det samme ark som det forespørgselstabellen oprettes på" hvis jeg kører makroen på det ark2 hvor dataerne skal placeres så virker det fint. hvordan løser jeg det.

her er koden:


Sub Makro2()
'
' Makro2 Makro

'
Dim af1 As String
Dim pe1 As String

af1 = Worksheets("ark2").Range("A1")


MsgBox af1
    With Worksheets("ark1").QueryTables.Add(Connection:=Array(Array( _
        "ODBC;DSN=MS Access-database;DBQ=C:\Program Files\Microsoft Office\OFFICE11\SAMPLES\Northwind.mdb;DefaultDir=C:\Program Files\Microso" _
        ), Array( _
        "ft Office\OFFICE11\SAMPLES;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;" _
        )), Destination:=Range("A1"))
        .CommandText = Array( _
        "SELECT Fakturaer.Modtagernavn, Fakturaer.Modtageradresse, Fakturaer.Modtagerby, Fakturaer.Modtagerområde, Fakturaer.Modtagerpostnr, Fakturaer.Modtagerland, Fakturaer.`Kunde-ID`, Fakturaer.Kunder.Firma" _
        , _
        "navn, Fakturaer.Adresse, Fakturaer.Bynavn, Fakturaer.Område, Fakturaer.Postnr, Fakturaer.Land, Fakturaer.Sælger, Fakturaer.Ordrenr, Fakturaer.Ordredato, Fakturaer.Leveringsdato, Fakturaer.Forsendelses" _
        , _
        "dato, Fakturaer.Speditionsfirmaer.Firmanavn, Fakturaer.Produktnr, Fakturaer.Produktnavn, Fakturaer.`Pris pr enhed`, Fakturaer.Antal, Fakturaer.Rabat, Fakturaer.Varetotal, Fakturaer.Fragtomkostninger" & Chr(13) & "" & Chr(10) & "" _
        , _
        "FROM `C:\Program Files\Microsoft Office\OFFICE11\SAMPLES\Northwind`.Fakturaer Fakturaer" & Chr(13) & "" & Chr(10) & "WHERE (Fakturaer.Modtagerpostnr='" & af1 & "') AND (Fakturaer.Ordredato>{ts '1980-01-01 00:00:00'} And Fakturaer.Ordre" _
        , "dato<{ts '2007-01-01 00:00:00'})")
        .Name = "Forespørgsel fra MS Access-database_11"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .PreserveColumnInfo = True
        .Refresh BackgroundQuery:=False
    End With

End Sub
Avatar billede kabbak Professor
08. september 2007 - 15:18 #1
ret
Destination:=Range("A1"))

til

Destination:=.Range("A1"))
Avatar billede kabbak Professor
08. september 2007 - 15:22 #2
du skriver "På ark1 har lavet en knap som jeg har tildelt en makro der henter data ind i ark2."

så vidt jeg kan se er det omvendt, da den starter med

With Worksheets("ark1").QueryTables.Add(Connection:=Array(Array( _
        "ODBC;DSN=MS Access-database;DBQ=C:\Program Files\Microsoft
Avatar billede madiedk Nybegynder
08. september 2007 - 15:26 #3
ja det er rigtig det er omvendt. jeg har prøvet at skrive .range i stedet for range. men så siger den bare "compile error invalid eller unqualified reference"
Avatar billede madiedk Nybegynder
08. september 2007 - 15:27 #4
det virker nu. skrev Destination:=Worksheets("ark1").Range("A1"). du inspirerede mig med det punktum. smid et svar så der point. tak.
Avatar billede kabbak Professor
08. september 2007 - 16:44 #5
et svar ;-))
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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