Kan niet alle comboboxen gebruiken

Status
Niet open voor verdere reacties.

huizemeul

Gebruiker
Lid geworden
17 mrt 2013
Berichten
105
Mijn VBA code in bijgevoegd bestaand werkt niet.
Ik weet niet waar het foutje? zit:evil:
Heb zes cboboxen. De filter vertikt het zodra ik één van de eerste vier invul.
Vul ik alleen de laatste twee werkt het wel!

Wat is mijn fout?

Gr. Huizemeul
 

Bijlagen

Beste huizemeul, het is belangrijk om een goede titel te kiezen bij uw vragen zodat andere leden kunnen zien waar het om gaat zonder het topic te openen.

Ik heb dat nu voor deze vraag gedaan, let hier in de toekomst a.u.b op.
 
Je hebt twee soorten mensen: zij die mijn cursus lezen en die korte, nette en bondige code schrijven zonder onnodige rompslomp, en zij die dat niet doen. Van die laatste categorie krijgen we hier de meest uiteenlopende voorbeeldjes te zien. Jouw code suggereert dat je in de tweede groep zit :). Je probleem wordt veroorzaakt door het gebruik (of eigenlijk: niet gebruiken) van spaties. Waardoor de strings tegen elkaar geplakt worden. Dus als je jouw code wilt blijven gebruiken, kijk dan eens hoe je de variabelen aan elkaar knoopt en waar je spaties zou moeten hebben. Maar ik snap eerlijk gezegd niet (en je bent dus niet de eerste of de enige) waarom je een filter maakt voor de niet-gebruikte keuzelijsten. Die moet je dan gewoon niet filteren. Veel makkelijker! Dus dit is mijn oplossing:

Code:
    If Not Me.cboAfschrijving.Value = "" Then
        If Not strFilter = "" Then strFilter = strFilter & " AND "
        strFilter = strFilter & "[Afschrijving] = '" & Me.cboAfschrijving.Value & "'"
    End If

    If Not Me.cboBankrekening.Value = "" Then
        If Not strFilter = "" Then strFilter = strFilter & " AND "
        strFilter = strFilter & "[Bankrekening] = '" & Me.cboBankrekening.Value & "'"
    End If
    If Not Me.cboContant.Value = "" Then
        If Not strFilter = "" Then strFilter = strFilter & " AND "
        strFilter = strFilter & "[Contant] = '" & Me.cboContant.Value & "'"
    End If
    If Not Me.cboSpaar.Value = "" Then
        If Not strFilter = "" Then strFilter = strFilter & " AND "
        strFilter = strFilter & "[Spaar] = '" & Me.cboSpaar.Value & "'"
    End If
    If Not Me.cboJaar.Value = "" Then
        If Not strFilter = "" Then strFilter = strFilter & " AND "
        strFilter = strFilter & "[Jaar] = '" & Me.cboJaar.Value & "'"
    End If
    If Not Me.cboMaand.Value = "" Then
        If Not strFilter = "" Then strFilter = strFilter & " AND "
        strFilter = strFilter & "[Maand] = '" & Me.cboMaand.Value & "'"
    End If

Overigens gebruik je een getalveld (jaar is toch een getal?) als tekst. Zou ik ook niet doen.
 
Laatst bewerkt:
Hartelijk dank voor het antwoord. Ik heb de cursus wel gelezen maar waarschijnlijk niet goed genoeg.
Ben daarom zelf wat wezen stoeien en ben omdat ik er te weinig ervaring mee heb sluipen er grote fouten in.

Ben al trots op mezelf dat ik het probeer. Al is niet iedereen blij hiermee.

Ben heel blij met het antwoord :D
Zal hem als opgelost zetten.

Gr. Huizemeul.

P.S. Zal het getalveld veranderen
 
Prima :) En dank voor het lezen ;)
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan