VBA Erreur!

kennedy

XLDnaute Junior
Bonjour,

J'ai des erreurs que je ne comprend pas dans mon code :x Elles sont peut-être grosses comme une maison mais jvois pas :x...
Code:
Private Sub Ouvrir1_Click()

    Dim NomFichier As String
    Dim filt As String
    Dim IndexFiltre As Integer
    Dim Titre As String
    Dim Collec As New Collection
    Dim Cell As Range, Itm As Long
    
ListBox1.Clear

ListBox3.Clear

ListBox5.Clear

ListBox7.Clear

ListBox9.Clear

ListBox11.Clear

ListBox13.Clear

ListBox15.Clear

    
    NomFichier = Application.GetOpenFilename
    
    ' En principe ici je voudrais que lorsque l'on appuie sur le bouton
    '  annuler,ben ça annule... mais ça ne marche pas -_- (c'est juste en dessous) 
    ' Le code bloque à la premiere ligne If...


   If NomFichier = False Then
       MsgBox "Aucun fichier n'a été sélectionné..."
    Exit Sub
   End if

           
    
    Workbooks.Open NomFichier
    CheminSo.Caption = NomFichier
    



 'Là il n'y a pas de problème, j'extraie de ma colonne les données non 
'doublonnées. Merci à la personne qui m'a aidée!   
    
With Sheets("Source")
    
    For Each Cell In .Range("E3:E" & .Range("E65536").End(xlUp).Row)
        On Error Resume Next
        
            Collec.Add Cell, CStr(Cell)
        On Error GoTo 0
    Next
    For Itm = 1 To Collec.Count
        Me.ListBox1.AddItem Collec.Item(Itm)
    Next
     Nb = Collec.Count
    For Itm = 1 To Nb

'Ici je voudrais compter le nombre de lignes que j'ai sortient de ma colonne... 
'Mais ça m'affiche 1 tout le temps :

                ValidationCorrespondances.Nb_IndSo.Caption = _  
        "Nbre de lignes: " & Collec.Count
        Collec.Remove (1)
    Next
End Sub

Mon code continue après je n'en ai link qu'une seule partie.

Voilou si vous avez des idées? N'hésitez pas! :p
 
G

Guest

Guest
Re : VBA Erreur!

Bonjour tous,

Hello Pierrot:)

Pour la deuxième cela peut être avantageusement éviter par:

VB:
On Error Resume Next
For Each cell In .Range("E3:E" & .Range("E65536").End(xlUp).Row)
   ListBox1.Text = cell
   If Err.Number > 0 Then ListBox1.AddItem cell
   Err.Clear
Next
On Error Goto 0
NB=ListBox1.ListCount

Parcours de la plage en une seule boucle.

A+
 

Discussions similaires

Réponses
14
Affichages
396
Compte Supprimé 979
C

Statistiques des forums

Discussions
312 333
Messages
2 087 375
Membres
103 529
dernier inscrit
gonzi