Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VBA Access 2003 Suodattaminen

leppo1 [28.10.2005 10:42:47]

#

Moi
Mikä toiminto vastaa Accessin "suodata valinnan mukaan" ?

Eli ongelma on seuraava. Miten saan koodin sellaiseksi että se huomioi suodatuksessa molemmat ehdot. Nyt jos alemmassa on notnull niin ylempi jää huomioimatta. Mikä on parempi ratkaisu???

Private Sub Komento5_Click()
On Error GoTo Err_Komento5_Click





    If Not IsNull(Me!Nimi) Then

    Me.Filter = "Nimi=[Forms]![Kaikkituotteetlomake]![Nimi]"
    Me.FilterOn = True





    ElseIf Not IsNull(Me!Tyyppi) Then

    Me.Filter = "Tyyppi=[Forms]![Kaikkituotteetlomake]![Tyyppi]"
    Me.FilterOn = True








   Else

   End If

Exit_Komento5_Click:
    Exit Sub

Err_Komento5_Click:
    MsgBox Err.Description
    Resume Exit_Komento5_Click

End Sub

setä [28.10.2005 13:02:48]

#

Käytä kahta erillistä If-lausetta ElseIffin sijasta

BadSource [28.10.2005 13:44:24]

#

Parempi on lisätä ensimmäiseksi yhdistetty tarkastelu, jossa molemmat ovat käytössä, jolloin siihen voidaan reagoida oikein.

If Not (IsNull(Me!Nimi) And IsNull(Me!Tyyppi)) Then
    Me.Filter = "Nimi=[Forms]![Kaikkituotteetlomake]![Nimi] And Tyyppi=[Forms]![Kaikkituotteetlomake]![Tyyppi]"
    Me.FilterOn = True
ElseIf Not IsNull(Me!Nimi) Then
    '...
ElseIf Not IsNull(Me!Tyyppi) Then
    '...
End If

leppo1 [28.10.2005 15:15:45]

#

Kiitokset sain toimimaan tällä yhdistetyllä tarkastelulla.
VALTAVAN SUURET KIITOKSET olen pian viinipullon velkaa.

En kyllä maksais itelleni tuntipalkkaa tästä räpeltämisestä. Päivä järkeilyä yhden kyselyn aikaansaamiseksi....

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta