Bonjour,
Je fais un filtre sur des données, que je veux rapatrier dans un listbox. Seulement, je veux le faire cellule par cellule et non ligne par ligne, afin de ne prendre que les cellules qui m'intéressent mais en rajoutant, dans la première colonne, le n° de la ligne concernée.
Ex :
NOM - Prénom - Age - Date de naissance
Je récupère dans mon filtre tous ceux qui s'appellent MARTIN mais je n'affiche dans mon listbox que : N° ligne - NOM - Prénom.
Voici le code que j'ai commencé à faire :
Mon soucis est que cela marche très bien pour la première ligne, mais que pour la seconde, j'ai un message d'erreur sur areas(i).row et que je comprends pas pourquoi.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 'Voici le nombre de lignes affichées par le filtre : Nbre_lignes_filtrees = ActiveSheet.AutoFilter.Range.Columns(1).SpecialCells(xlCellTypeVisible).Cells.Count - 1 For i = 2 To Nbre_lignes_filtrees numero_ligne = Range("_filterdatabase").SpecialCells(xlCellTypeVisible).Areas(i).Row Lst_Recherche.AddItem Lst_Recherche.List(i - 2, 0) = numero_ligne 'Ajout du n° ligne 'valeur = Cells(numero_ligne, 1).Value '... next
"Erreur d'exécution 1004
Erreur définie par l'application ou par l'objet"
Merci d'avance pour votre aide ou pour une autre solution...
Au secours !!![]()
Partager