Avatar billede lincodma Nybegynder
01. december 2001 - 22:54 Der er 12 kommentarer og
1 løsning

Impotere data fra access til excel

Jeg har en kundedatabase i access med navn, adresse osv. Jeg har også et faktura system i excel. Jeg ønsker hjælp til en løsning der gør at når en kunde ringer, får jeg hans navn, adresse, postnr og by og indtaster det i access, der skal så være en knap til at hoppe til excel og den skal så automatisk trække navn, adresse osv over i excel i nogle bestemte felter, kan det lade sig gøre og hvordan?
Avatar billede mugs Novice
01. december 2001 - 22:56 #1
I Access97?
Avatar billede lincodma Nybegynder
01. december 2001 - 23:00 #2
Det er i ms office 2002
Avatar billede mugs Novice
01. december 2001 - 23:00 #3
Dim Obvar As Object, wkb As Object, Rst As Recordset \' Variabelerklæringer
Dim i As Integer, Felt1 As Integer, Felt2 As Integer, Tek As String
\'Hvis du har oprettet en ny post, skal tabellen først opdateres, ellers ses den nye post ikke i Excel
\'Me er den aktive formular og Refresh opdaterer den underliggende tabel / forespørgsel.
Me.Refresh
\'Næste sætning definerer hvilken tabel der skal levere data og åbner denne
Set Rst = DBEngine.Workspaces(0).Databases(0).OpenRecordset(\"Tabel1\", dbOpenTable)
\'Excel åbnes ved hjælp af funktionen \"CreateObject\"
Set Obvar = CreateObject(\"excel.application\")
\'Gør Excel synlig, Du kan også flytte denne linie længere ned...
\'hvis eksporten skal være afsluttet når Excel bliver synlig
Obvar.Visible = True
Her er koden der fungerer i Access97 med kommentarer:


\'Variablen wkb sættes = projektmappen, der tilføjes med metoden Add
Set wkb = Obvar.Workbooks.Add
\'Der sættes overskrifter på Excel-arket
wkb.Worksheets(\"Ark1\").Cells(1, 1).Value = \"Felt 1\"
wkb.Worksheets(\"Ark1\").Cells(1, 2).Value = \"Felt 2\"
\'Løkken der henter data fra tabel1 i Access og lægger data ind i Excel...
\'Hvis der ekporteres tekst erstattes \"Str$\" med \"Format\"
For i = 2 To Rst.RecordCount + 1
wkb.Worksheets(\"Ark1\").Cells(i, 1).Value = Str$(Rst.Fields![Felt1])
wkb.Worksheets(\"Ark1\").Cells(i, 2).Value = Str$(Rst.Fields![Felt2])
Rst.MoveNext
Next
\'Summen af felt2 udregnes
Tek = \"=Sum(R[\" + Str$(-Rst.RecordCount) + \"]C:R[-1]C)\"
wkb.Worksheets(\"Ark1\").Cells(Rst.RecordCount + 2, 2).Value = Tek
\'Linien tilpasser bredden af benyttede kolonner
wkb.Worksheets(\"Ark1\").UsedRange.Columns.AutoFit
\'Objektvariablen frigives
Set Obvar = Nothing
End Sub
Avatar billede mugs Novice
01. december 2001 - 23:01 #4
Hvad gik der galt her?
Jeg ved ikke om du kan bruge det - men måske kan det hjælpe lidt på vej. Jeg prøver igen.
Dim Obvar As Object, wkb As Object, Rst As Recordset \' Variabelerklæringer
Dim i As Integer, Felt1 As Integer, Felt2 As Integer, Tek As String
\'Hvis du har oprettet en ny post, skal tabellen først opdateres, ellers ses den nye post ikke i Excel
\'Me er den aktive formular og Refresh opdaterer den underliggende tabel / forespørgsel.
Me.Refresh
\'Næste sætning definerer hvilken tabel der skal levere data og åbner denne
Set Rst = DBEngine.Workspaces(0).Databases(0).OpenRecordset(\"Tabel1\", dbOpenTable)
\'Excel åbnes ved hjælp af funktionen \"CreateObject\"
Set Obvar = CreateObject(\"excel.application\")
\'Gør Excel synlig, Du kan også flytte denne linie længere ned...
\'hvis eksporten skal være afsluttet når Excel bliver synlig
Obvar.Visible = True
\'Variablen wkb sættes = projektmappen, der tilføjes med metoden Add
Set wkb = Obvar.Workbooks.Add
\'Der sættes overskrifter på Excel-arket
wkb.Worksheets(\"Ark1\").Cells(1, 1).Value = \"Felt 1\"
wkb.Worksheets(\"Ark1\").Cells(1, 2).Value = \"Felt 2\"
\'Løkken der henter data fra tabel1 i Access og lægger data ind i Excel...
\'Hvis der ekporteres tekst erstattes \"Str$\" med \"Format\"
For i = 2 To Rst.RecordCount + 1
wkb.Worksheets(\"Ark1\").Cells(i, 1).Value = Str$(Rst.Fields![Felt1])
wkb.Worksheets(\"Ark1\").Cells(i, 2).Value = Str$(Rst.Fields![Felt2])
Rst.MoveNext
Next
\'Summen af felt2 udregnes
Tek = \"=Sum(R[\" + Str$(-Rst.RecordCount) + \"]C:R[-1]C)\"
wkb.Worksheets(\"Ark1\").Cells(Rst.RecordCount + 2, 2).Value = Tek
\'Linien tilpasser bredden af benyttede kolonner
wkb.Worksheets(\"Ark1\").UsedRange.Columns.AutoFit
\'Objektvariablen frigives
Set Obvar = Nothing
End Sub
Avatar billede mugs Novice
01. december 2001 - 23:02 #5
Er du interesseret i en lille testdb i 97, skal du blot lægge din e-mail.
Avatar billede medions Nybegynder
01. december 2001 - 23:02 #6
hvordan impotere man så data fra excel til Access?
Avatar billede mugs Novice
01. december 2001 - 23:05 #7
medions > aner det ikke i VBA, kender faktiskm intet til excel.
Men du kan i databasevinduet vælge \"Hent eksterne data\" og finde filen du vil importere. Derefter følger du blot wizarden.
Avatar billede lincodma Nybegynder
01. december 2001 - 23:06 #8
til mugs tak for hjælpen, hvis du vil lave et eksempel for mig og emaile det til mig vil jeg blive meget glad lincodma@hotmail.com
Avatar billede medions Nybegynder
01. december 2001 - 23:06 #9
hmm.. hvor i databasevinduet ?
Avatar billede medions Nybegynder
01. december 2001 - 23:14 #10
ok.. jeg har fundet ud af det nu... takker ;-)
Avatar billede mugs Novice
01. december 2001 - 23:17 #11
medions > I databasevinduet > Filer > Hent eksterne data

lincodma > tak for point, sender om lidt
Avatar billede lincodma Nybegynder
01. december 2001 - 23:44 #12
Har sendt en mail tilbage til mugs
Avatar billede mcsj Nybegynder
15. februar 2003 - 21:09 #13
bliv lige Proffesser i MS Office Xp  <Mugs>
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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