Bonjour, j'écris ce post car j'ai fait le tour de mes connaissances et même en regardant partout je ne trouve pas de solution.
J'ai une base (Sous forme de tableau) Onglet Source. (Une mise à jour du tableau est réalisée de temps en temps par une autre macro)
J'ouvre un formulaire pour réaliser une recherche dans cet onglet.
Le formulaire se charge correctement. Suivant le mot recherché VBA plante. Erreur 13 Incompatibilité de type.
Si je recherche 1 ou 5 ou 8 tout fonctionne correctement. pour tout le reste ça plante dans cette partie là.
il me semble qu'une variable cloche mais je ne trouve pas laquelle.
Si vous avez une solution, je suis preneur car c'est la dernière phase de mon projet.
bonne journée.
J'ai une base (Sous forme de tableau) Onglet Source. (Une mise à jour du tableau est réalisée de temps en temps par une autre macro)
J'ouvre un formulaire pour réaliser une recherche dans cet onglet.
Le formulaire se charge correctement. Suivant le mot recherché VBA plante. Erreur 13 Incompatibilité de type.
Si je recherche 1 ou 5 ou 8 tout fonctionne correctement. pour tout le reste ça plante dans cette partie là.
VB:
Private Sub TextBoxRech_Change()
If Me.TextBoxRech <> "" Then
mots = Split(Trim(Me.TextBoxRech), " ")
Tbl = choix
For i = LBound(mots) To UBound(mots)
Tbl = Filter(Tbl, mots(i), True, vbTextCompare)
Next i
If UBound(Tbl) > -1 Then
Dim b(): ReDim b(1 To UBound(Tbl) + 1, 1 To NbCol + 1)
For i = LBound(Tbl) To UBound(Tbl)
a = Split(Tbl(i), "|")
j = a(NcolInt)
[B] For C = 1 To NbCol: b(i + 1, C) = BD(j, C): Next C[/B]
b(i + 1, C) = j
Next i
Me.ListBox1.List = b
Else
Me.ListBox1.Clear
End If
Else
UserForm_Initialize
End If
End Sub
il me semble qu'une variable cloche mais je ne trouve pas laquelle.
Si vous avez une solution, je suis preneur car c'est la dernière phase de mon projet.
bonne journée.