Avatar billede sunero Nybegynder
23. april 2003 - 11:09 Der er 7 kommentarer og
1 løsning

udskrift af en enkelt post

Jeg har oprettet en form hvor man kan bladre mellem de enkelte poster. Jeg vil gerne have et felt med tilhørende knap, hvor det skal være muligt at søge efter en bestemt post (udfra et felt). Derudover vil jeg gerne have en knap der kalder en rapport og udskriver den pågældende post. Er dette svært og hvordan gøres det ?
23. april 2003 - 11:13 #1
Rapporten udskrives således:
Docmd.OpenReport "DinRapport", acviewpreview,,"ID = " & ME!ID
(Hvor ID er nøglefeltet på formularen/rapporten)
23. april 2003 - 11:16 #2
Mht til søgning, så kan du lave en ubunden tekstboks.
Hvis du f.eks. vil søge på Fornavn, kan du kalde tekstboksen "søgFornavn" (i egenskaben Navn)

På tekstboksen's EfterOpdatering lægger du denne kode:
If IsNull(Me!søgFornavn) = Me!søgFornavn = "" then
  Me.Filteron = False
else
  Me.Filter = "Fornavn = '" & Me!søgFornavn & "'"
  Me.Filteron = true
endif
Avatar billede sunero Nybegynder
23. april 2003 - 11:33 #3
Nu er jeg temlig "grøn" i Access programmering, så jeg har lige et par spørgsmål:

1. hvad er ME! ?
2. Hvordan laver man en ubunden tekstboks og skal den kaldes fra formen ?
23. april 2003 - 11:40 #4
1) Me er et objekt, som referere til den form, som koden køres fra. Hver gang du skal referere til et kontrolobjekt (f.eks. en tekstboks eller en etikette) på din formular vha kode, skal du skrive således: Me![Navn på kontrolobjekt]

2) Du trækker blot en tekstboks fra din værktøjskasse (den med AB).
Herefter åbner du egenskaberne til tekstboksen (hvis de ikke allerede er åbne) ved at højreklikke på tekstboksen og vælge Egenskaber.
Under fanebladet "Andet" finder du egenskaben "Navn" hvor du f.eks. skriver 'søgFornavn' eller hvad du nu synes. Dette navn skal du så bruge i koden. (hvis du benytter mellemrum eller andre specialtegn i navnet, skal du benytte [] i koden, som vist i punkt 1)
23. april 2003 - 11:47 #5
....og koden placerer du ved at vælge egenskaben "Efter Opdatering" på tekstboksen og klikke på knappen til højre med de 3 prikker og derefter vælge "Kode"
Koden skrives mellem du 2 linier, som Access har indsat.
Avatar billede sunero Nybegynder
23. april 2003 - 11:59 #6
Dette er koden på min AfterUpdate, men når jeg taster noget ind i boxen og trykker Enter, hoppes der bare til den næste post.

BatchNo er en streng 50.

Ser dette ikke rigtigt ud ?

Private Sub SeekProduktion_AfterUpdate()
If IsNull(Me!SeekProduction) = Me!SeekProduction = "" Then
  Me.FilterOn = False
Else
  Me.Filter = "BatchNo = '" & Me!SeekProduction & "'"
  Me.FilterOn = True
End If
End Sub
23. april 2003 - 12:06 #7
Det ser rigtigt ud....
Har du sikret dig, at feltet BatchNo findes i tabellen/forespørgslen som danner formularen?

Du kan evt debugge din kode ved at højreklikke på linien, som starter med "If Isnull(Me!...." og vælge Toggle->Breakpoint.

Herefter starter du formularen og skriver noget i SeekProduktion og trykker ENTER. Access skulle så gerne hoppe til den markerede linie, hvorefter du kan singlesteppe med F8 for at se om den hopper ind i den rigtige del af IF-sætningen. Endvidere kan du holde musen over forskellige felter og se værdien og ud fra det vurdere om den fungere korrekt.
Avatar billede sunero Nybegynder
23. april 2003 - 12:42 #8
Jeg satte en knap på formen og puttede koden ind på OnClick, hvorefter det virker.
Tak for hjælpen
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