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

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