Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Excel Problème VBA Code erreur "9"

rwdesign

XLDnaute Nouveau
Bonjour,

j'ai un soucis que je n'arrive pas a résoudre ...

je fait un filtre avec une listbox sur plusieurs feuilles de mon classeur excel , mais j'ai cette erreur que je n'arrive pas a enlever ... Il me dit "l'indice n'appartien pas a la selection."

voici le code :

Code:
Option Explicit

Dim v(10000, 6) As String
Dim nbV As Long

Private Sub CommandButton2_Click()
Me.Hide
End Sub



Private Sub Label5_Click()

End Sub

Private Sub ListView1_DblClick()
    Dim indice As Long
    indice = ListView1.SelectedItem.Tag
    With ThisWorkbook.Sheets(v(indice, 0))
    .Select
    .Range("B" & CLng(v(indice, 6)) & ":G" & CLng(v(indice, 6))).Select
    End With
End Sub

Private Sub TextBox1_Change()
AfficherVecteur
End Sub

Private Sub TextBox2_Change()
AfficherVecteur
End Sub

Private Sub TextBox3_Change()
AfficherVecteur
End Sub

Private Sub TextBox4_Change()
AfficherVecteur
End Sub

Private Sub TextBox5_Change()
AfficherVecteur
End Sub

Private Sub TextBox6_Change()
AfficherVecteur
End Sub

Private Sub UserForm_Initialize()
Dim f As Worksheet
Dim i As Long
Dim r As Range
nbV = 0
For Each f In ThisWorkbook.Worksheets
    Set r = f.Range("B16")
    
    If f.Name <> "Accueil" Then
        For i = 2 To f.Range("B65536").End(xlUp).Row
            nbV = nbV + 1
            v(nbV, 0) = Trim(r.Offset(i - 1, 0))
            v(nbV, 1) = Trim(r.Offset(i - 1, 1))
            v(nbV, 2) = Trim(r.Offset(i - 1, 2))
            v(nbV, 3) = Trim(r.Offset(i - 1, 3))
            v(nbV, 4) = Trim(r.Offset(i - 1, 4))
            v(nbV, 5) = Trim(r.Offset(i - 1, 5))
            v(nbV, 6) = i
        Next i
    End If
Next

AfficherVecteur
End Sub

Function AfficherVecteur()
ListView1.ListItems.Clear
Dim i As Long
For i = 0 To nbV
    If Valide(i) Then AjoutListe i
Next i
End Function

Function Valide(i) As Boolean
Valide = ((v(i, 0) = TextBox1 Or TextBox1 = "") And _
(v(i, 1) = TextBox2 Or TextBox2 = "") And _
(v(i, 2) = TextBox3 Or TextBox3 = "") And _
(v(i, 3) = TextBox4 Or TextBox4 = "") And _
(v(i, 4) = TextBox5 Or TextBox5 = "") And _
(v(i, 5) = TextBox6 Or TextBox6 = ""))
End Function

Function AjoutListe(i)
    Dim j As Long
    With ListView1
    .ListItems.Add , , v(i, 0)
    For j = 1 To 5
        .ListItems.Item(.ListItems.Count).ListSubItems.Add , , v(i, j)
    Next j
    .ListItems.Item(.ListItems.Count).Tag = i
    End With
End Function

<config>Windows 7 / Internet Explorer 8.0</config>
 
Dernière édition:
C

Compte Supprimé 979

Guest
Re : Excel Problème VBA Code erreur "9"

Bonjour Rwdesign et bienvenue sur ce forum

Pour commencer :
1) mettre le code entre balises
Code:
 et [/ code] (sans espace pour la balise de fin)
2) avec un fichier c'est mieux, cela nous permet de tester et de voir plus rapidement
3) Tu peux ré-éditer ton premier message pour mettre les balises comme il faut

Sur ces conseils
A+
 

Fred0o

XLDnaute Barbatruc
Re : Excel Problème VBA Code erreur "9"

Bonjour rwdesign, BrunoM45,

Ta demande contient exactement 11 procédures. Dans laquelle se produit l'erreur et sur quelle ligne ?

Comme le dit Bruno, rien ne vaut un fichier exemple. Merci de nous fournir plus de détails si tu veux un peu d'aide.

A+
 

rwdesign

XLDnaute Nouveau
Re : Excel Problème VBA Code erreur "9"

Oui désoler , je vais m'en occuper , j'ai réussi a résoudre le problème ...

Mais j'ai une autre question , j'ai des textbox et un listview pour faire une recherche par filtre mais j'ai un soucis je suis obliger de taper exactement la chaîne de charactère pour pouvoir avoir le resultat , y a t'il un moyen "en tapant juste les trois première lettre de la cellule par exemple que automatiquement dans la listview il montre au fure et a mesure les nom qui commence par ces 3 première lettre ?

Cordialement
 
C

Compte Supprimé 979

Guest
Re : Excel Problème VBA Code erreur "9"

Re,

Oui, il faut mettre le filtrage dans l'évènement Change du TextBox

Il y a un tas de fils à ce sujet, merci d'effectuer une petite recherche
"filtrer listbox selon textbox"

A+
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Excel Problème VBA Code erreur "9"

Bonjour le fil, bonjour le forum,

Malheuresement aussi je peux pas vous envoyer le fichier , car je bosse pour une grosse boite et le fichier contient des données sensible ...
Je trouve inquiétant la flemme grandissante de beaucoup de demandeurs ! Il est relativement simple et rapide de créer un fichier exemple (reprenant la structure du fichier original) avec des données factices...

 

Discussions similaires

Réponses
6
Affichages
248
Réponses
5
Affichages
193
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…