Avatar billede erlandsen Seniormester
19. november 2020 - 21:06 Der er 7 kommentarer og
2 løsninger

Knap i formular

Jeg har lavet en knap i en formular, der kører en forespørgsel, og nu vil jeg gerne afgrænse den ved, at den tager det cpr. nr. der står i formularen og kun viser poster indeholdende dette cpr. nr.
Hvordan gøres dette?
Avatar billede terry Ekspert
20. november 2020 - 13:02 #1
Hi Johnny, a while since I've seen you around, hope your doing well.
Its not possible to open a query and applying a filter at the same time. You can use VBA to alter the SQL in the query before opening it, but an easy solution is to make a form which displays the query as a datasheet.

Then instead of using DoCmd.OpenQuery you open the form.

docmd.OpenForm "frmToOpen",acFormDS, ,"CPR = '" & Me.CprNr & "'" , acFormEdit
Avatar billede fdata Forsker
20. november 2020 - 13:39 #2
Du kunne også overveje at ændre din forespørgsel (hvis den ikke bruges til noget andet), så du lægger parameteren direkte i forespørgslen.

Altså som Kriterie under feltet CPR:
  [Formularer]![DinForm]![CPR]

(ret selv form- og feltnavnene)
Avatar billede erlandsen Seniormester
20. november 2020 - 15:16 #3
Hi Terry, long time since I heard from you; hope you are doing well. I'll check if I can do as you suggest :-)
Avatar billede erlandsen Seniormester
20. november 2020 - 15:21 #4
Hej fdata - tak for dit bud. Prøvede lige dit forslag - men jeg får en boks op, hvor jeg skal indtaste CPR -nummeret (som jeg gerne ville have at den selv tog fra feltet...

Min formular hedder sagsoprettelse og feltet CPRnr - så jeg har skrevet følgende kriterie i forespørgslen:

[sagsoprettelse]![CPRnr]

Det er ikke helt det du beder mig om; hvad er det jeg mangler?
Avatar billede erlandsen Seniormester
20. november 2020 - 15:26 #5
fdata - det var en forkert formular - beklager...

Formularen hedder Sager og feltet CPRnr - men nu åbner forespørgslen uden at filtrere på cpr nr.

[Sager]![CPRnr]
Avatar billede erlandsen Seniormester
20. november 2020 - 15:32 #6
Tror jeg fandt ud af det:

[Formularer]![sager]![CPRnr]

-så virker det som jeg tænkte :-) men måske skal det se lidt smartere ud
Avatar billede erlandsen Seniormester
20. november 2020 - 20:56 #7
Terry - what do I do wrong?

Private Sub SagerKnapForBorger_Click()
On Error GoTo Err_SagerKnapForBorger_Click

    Dim stDocName As String

    stDocName = "frmSagerPrBorger"
    DoCmd.OpenForm "frmSagerPrBorger", acFormDS, , "CPR = '" & Me.CPRnr & "'", acFormEdit

Exit_SagerKnapForBorger_Click:
    Exit Sub

Err_SagerKnapForBorger_Click:
    MsgBox Err.Description
    Resume Exit_SagerKnapForBorger_Click
Avatar billede terry Ekspert
21. november 2020 - 09:58 #8
What does the error say?

The code is assuming that the button you press is on the form containing the field CPRnr. If the field is on a sub form then you need to refer to that.

You could set a breakpoint at the line before DoCmd.... then in the debug window (CTRL+G)
Write this followed by enter, to see what the string contains
? "CPR = '" & Me.CPRnr & "'"
Avatar billede terry Ekspert
21. november 2020 - 09:59 #9
Is the field in the table named CPR? If not then you need to change it to the correct name ;-)
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