geertsjelle
Gebruiker
- Lid geworden
- 30 jan 2009
- Berichten
- 87
Hallo allemaal,
Onlangs heb ik met behulp van dit form een search database gemaakt. Deze werkt perfect, ik krijg alleen een foutmelding als ik op "search" druk en ik heb geen selectie criteria ingegeven (Fout 9 tijdens uitvoering: Het subscript valt buiten het bereik). Ik weet dat de database natuurlijk niet kan zoeken zonder zoekcriteria. Maar de melding doet op een gebruiker over komen of er iets mis is met de database. Weet iemand een oplossing voor dit probleem. Zie hieronder de code van het zoekfiter.
Alvast bedankt.
_____________________
Jelle
Onlangs heb ik met behulp van dit form een search database gemaakt. Deze werkt perfect, ik krijg alleen een foutmelding als ik op "search" druk en ik heb geen selectie criteria ingegeven (Fout 9 tijdens uitvoering: Het subscript valt buiten het bereik). Ik weet dat de database natuurlijk niet kan zoeken zonder zoekcriteria. Maar de melding doet op een gebruiker over komen of er iets mis is met de database. Weet iemand een oplossing voor dit probleem. Zie hieronder de code van het zoekfiter.
Alvast bedankt.
_____________________
Jelle
Code:
Private Function FilterMaken()
Dim varWhere() As String
Dim intIndex As Integer, i As Integer
intIndex = 0
' Check kolom1
If Nz(Me.kolom1, "") <> "" Then
intIndex = intIndex + 1
ReDim Preserve varWhere(intIndex)
varWhere(intIndex) = "[Naam bedrijf] LIKE '*" & Me.bedrijf.Value & "*' "
End If
' Check kolom2
If Nz(Me.CMBkolom2, "") <> "" Then
intIndex = intIndex + 1
ReDim varWhere(intIndex)
varWhere(intIndex) = "[markt] = '" & Me.CMBMarkt.Value & "'"
End If
' Check kolom3
If Nz(Me.CMBkolom3, "") <> "" Then
intIndex = intIndex + 1
ReDim Preserve varWhere(intIndex)
varWhere(intIndex) = "[status] = '" & Me.CMBstatus.Value & "'"
End If
' Check kolom4
If Nz(Me.CMBkolom4, "") <> "" Then
intIndex = intIndex + 1
ReDim Preserve varWhere(intIndex)
varWhere(intIndex) = "[Regio] = '" & Me.CMBregio.Value & "'"
End If
' Check kolom5
If Nz(Me.CMBkolom5, "") <> "" Then
intIndex = intIndex + 1
ReDim Preserve varWhere(intIndex)
varWhere(intIndex) = "[Intressant voor kal/val] = '" & Me.CMBintressant.Value & "'"
End If
' Check kolom6
If Nz(Me.CMBkolom6, "") <> "" Then
intIndex = intIndex + 1
ReDim Preserve varWhere(intIndex)
varWhere(intIndex) = "[actie] = '" & Me.CMBactie.Value & "'"
End If
' Check of er een filter is gemaakt...
If IsNull(varWhere(1)) Then
Exit Function
Else
FilterMaken = "WHERE "
For i = LBound(varWhere) To UBound(varWhere)
FilterMaken = FilterMaken & varWhere(i)
If i < UBound(varWhere) Then FilterMaken = FilterMaken & " AND "
Next i
End If
End Function