Avatar billede centauri Nybegynder
18. oktober 2002 - 12:52 Der er 3 kommentarer og
1 løsning

Manuel Querystring eller Vælge Records

Jeg har fået et meget stort problem så håber der er nogen her da kan hjælpe.

Jeg har en masse data i en access database jeg skal have ud i bla et Word Dokument og et Excel regneark. Det virker også fint nok med komandoen

DoCmd.TransferSpreadsheet acExport, 8, "ALLE_Recoards", "c:\test_New.xls", False, ""

Men nu er det så at det hele skulle udvides så man kan vælge på en form hvilke felter man vil have overført til Excel regnearket.

Men hvordan gør jeg det ?

For med : DoCmd.TransferSpreadsheet acExport, 8, "ALLE_Recoards", "c:\test_New.xls", False, "" kan jeg jo kun vælge en Query den der i mit tilfelde hedder ALLE_Records. Jeg kan ikke selv definere min SQL sætning der.

Jeg har brug for enten selv at kunne generere min query string eller på en eller anden måde kunne overføre mine valg fra min form af hvilke felter der skal vises i min Query.

Nogen der kan fortælle mig hvordan jeg kan det ?
Avatar billede fdata Forsker
18. oktober 2002 - 14:13 #1
Opret en formular med et afkrydsningsfelt hørende til hvert datafelt.
Afkrydsningsfelterne kunne hedde X1, X2 osv.

Her følger så puslespilbrikkerne (går ud fra, at du genkender brikkerne):

' Variable og konstanter
Const Qnavn = "Q_VisseFelter"
Dim strSQL as String
Dim Qdf As QueryDef

' Opbyg SQL
strSQL = "SELECT "
if X1 then strSQL = strSQL & "TabelNavn.Feltnavn1, "
if X2 then strSQL = strSQL & "TabelNavn.Feltnavn2, "
'osv.

' Tom?
If strSQL = "SELECT " Then
  MsgBox "Du skal vælge mindst et felt"
  Exit Sub
End If

' Finish
strSQL = Left(strSQL,Len(strSQL)-2)    ' Slet sidste komma og mellemrum
strSQL = strSQL & " FROM TabelNavn;"  ' Samt evt. yderligere kriterier

' Dan Query
CurrentDb.QueryDefs.Delete Qnavn      ' Slet den eksisterende       
Set Qdf = CurrentDb.CreateQueryDef(Qnavn, strSQL)
CurrentDb.QueryDefs.Refresh
Set Qdf = Nothing

' Nu burde du kunne eksportere forepørgslen Qnavn
Avatar billede centauri Nybegynder
21. oktober 2002 - 07:26 #2
Jeg får desværre en fejl ved :
Dim Qdf As QueryDef
Compiler Error : User-defined type not defined

Det gør jeg ved alle eksempler jeg har prøvet der bruger QueryDef

Hvad kan dette skyldes ? Og hvad kan jeg ellers gøre ?

Jeg bruger Office 2000 Premium hvis det skulle have nogen indflydelse.
Avatar billede centauri Nybegynder
21. oktober 2002 - 08:37 #3
Fik det til at virke alligevel bare mig der havde glemt at inkludere nogle objekter.

Så siger 1000 tak for hjælpen.
Avatar billede fdata Forsker
21. oktober 2002 - 17:59 #4
Selv tak. Glæder mig, det virkede  ;o)
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