kiezen welk rapport afdrukken

Status
Niet open voor verdere reacties.

De Vrije Vogel

Gebruiker
Lid geworden
8 apr 2006
Berichten
95
Hallo,
Hier ben ik weer met een nieuwe vraag.
Ik heb op een formulier een knop zitten, waarmee ik een specifiek rapport af kan drukken.
Nu wil ik dit zo wijzigen dat het systeem de keus maakt, welk rapport er wordt geprint.
Ik heb wat met expressie gedaan, werkt niet, daarna met Programmacode, ook daar kom ik niet uit.
Wie kan mij de oplossing aanreiken?
Ik heb via een formulier gegevens ingevoerd.
Deze wil printen en druk op de knop <rptPesticideAP_button>.
In het veld [tblSprayPlanning]![SprayerType] staat de trigger, maar dit kan zijn Tunnel of Tunnel 222 of Tunnel 240, e.d., vandaar Like "Tunnel*".
Zie verder hieronder.

Code:
Private Sub rptPesticideAP_button_Click()
Me.Requery
IIf ([tblSprayPlanning]![SprayerType] = Like Tunnel*,
docmd.openreport "rptPesticideAP_TSYes", AcPreview
Else docmd.openreport  "rptPesticideAP_TSNo")
End Sub
Bedankt voor de hulp.
DVV
 
Je zit op de verkeerde weg; VBA heeft niks met SQL te maken, en je kunt dus ook geen SQL commando's gebruiken. (ik zou bijna zeggen: gelukkig maar ;) )
Denk eerder in deze richting:

Code:
Private Sub rptPesticideAP_button_Click()
Dim sFilter As String
    If Me.txtFilter & "" <> "" Then
        sFilter = "[SprayerType] Like '" & Me.txtFilter & "*'"
        DoCmd.OpenReport "rptPesticideAP_TSYes", acPreview, , sFilter
    Else
        DoCmd.OpenReport "rptPesticideAP_TSNo", acPreview
    End If
End Sub
Met een tekstvak met de naam txtFilter op je formulier, anders werkt 't niet. En moet je de namen aanpassen.
 
Hallo Michel,
Het lukt me niet om het werkend te krijgen.
Ik heb een tekstvak op het formulier gezet met de naam txtFilter. Hoort er een besturingselementbron bij en zo ja welke?
Moet ik een aparte filter maken?
Het ziet er nu zo uit:
Code:
Private Sub cmdPesticide_Click()
Dim sFilter As String
    If Me.txtFilter & "" <> "" Then
        sFilter = "[tblSprayPlanning.SprayerType] Like '" & Me.txtFilter & "*'"
        DoCmd.OpenReport " rptPesticideAP_TSYesSingle_ChangeRec", acPreview, , sFilter
    Else
        DoCmd.OpenReport " rptPesticideAP_TSNoSingle_ChangeRec", acPreview
    End If
End Sub
Ik hoor wel.
En ja, SQL ken ik nog van heel vroeger. Toen Excel net bestond. Zo gooi ik weer van alles door elkaar.
Grtz,
Matt
 
Ik heb je db niet, dus ik weet niet hoe bij jou de objecten heten, vandaar dat ik zelf maar wat in elkaar pruts. Je wilt filteren op een bepaald veld, haal ik uit je eerste post. Als je hetzelfde veld wilt gebruiken, krijg je zoiets:

Code:
Private Sub cmdPesticide_Click()
Dim sFilter As String
    If Me.txtSprayerType & "" <> "" Then
        sFilter = "[SprayerType] Like '" & Me.txtSprayerType & "*'"
        DoCmd.OpenReport " rptPesticideAP_TSYesSingle_ChangeRec", acPreview, , sFilter
    Else
        DoCmd.OpenReport " rptPesticideAP_TSNoSingle_ChangeRec", acPreview
    End If
End Sub
Zoals je ziet, heb ik het object txtSprayerType genoemd, en is dat gekoppeld aan het veld SprayerType.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan