Recherche lignes et colonnes
Résolu
120Watts
Messages postés
12
Statut
Membre
-
120Watts Messages postés 12 Statut Membre -
120Watts Messages postés 12 Statut Membre -
Bonjour,
j'ai une petite macro qui me permet de rechercher une valeur dans un tableau et de copier les lignes correspondantes.
La recherche s'effectue sur une colonne (on change la valeur dans la macro...).
Je ne parviens à effectuer la recherche sur l'ensemble du tableau, est-ce possible ?
J'ai essayé de boucler sur les colonnes, après la boucle sur les lignes, mais ça ne donne rien...
En vous remerciant par avance si quelqu'un a une idée.
Le code ci-dessous.
Bien cordialement.
j'ai une petite macro qui me permet de rechercher une valeur dans un tableau et de copier les lignes correspondantes.
La recherche s'effectue sur une colonne (on change la valeur dans la macro...).
Je ne parviens à effectuer la recherche sur l'ensemble du tableau, est-ce possible ?
J'ai essayé de boucler sur les colonnes, après la boucle sur les lignes, mais ça ne donne rien...
En vous remerciant par avance si quelqu'un a une idée.
Le code ci-dessous.
Bien cordialement.
Sub Recherche3() Dim ligneRecap As Variant Dim i As Long 'nettoyage plage de réception [F1:H7].ClearContents ligneRecap = 1 'bouclage sur les lignes For i = 2 To [a20].End(xlUp).Row 'valeur charchée en colonne B If Cells(i, 2) = "aa" Then ligneRecap = ligneRecap + 1 'Redimensionnement du tableau pour copie des lignes identifiées sur la plage en colonne 6 Cells(i, 1).Resize(1, 3).Copy Cells(ligneRecap, 6) End If Next i 'copie ligne de titre Range("A1:C1").Copy Worksheets("Feuil9").Range("F1") End Sub
Configuration: Windows / Firefox 91.0
A voir également:
- Recherche lignes et colonnes
- Comment faire des colonnes sur word - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Classer par ordre alphabétique excel plusieurs colonnes - Guide
- Rechercher ou entrer l'adresse mm - recherche google - Guide
- Recherche photo - Guide
3 réponses
bonjour,
Peux-tu nous montrer comment tu as imbriqué les boucles?
Je ne comprends pas exactement ce que tu vas copier si tu trouves dans une autre colonne, donc j'hésite à suggérer un code.
Peux-tu soigner 'indentation de ton code? Cela le rend plus lisible et plus facile à modifier.
A tout hasard:
Cela peut parfois recopier plusieurs fois des lignes, peut-être pas ce que tu souhaites.
Peux-tu nous montrer comment tu as imbriqué les boucles?
Je ne comprends pas exactement ce que tu vas copier si tu trouves dans une autre colonne, donc j'hésite à suggérer un code.
Peux-tu soigner 'indentation de ton code? Cela le rend plus lisible et plus facile à modifier.
A tout hasard:
Option Explicit Sub Recherche3() Dim ligneRecap As Variant Dim i As Long, c As Long 'nettoyage plage de réception [F1:H7].ClearContents ligneRecap = 1 'bouclage sur les lignes For i = 2 To [a20].End(xlUp).Row For c = 1 To 3 'valeur charchée en colonnes de A à C If Cells(i, c) = "aa" Then ligneRecap = ligneRecap + 1 'Redimensionnement du tableau pour copie des lignes identifiées sur la plage en colonne 6 Cells(i, 1).Resize(1, 3).Copy Cells(ligneRecap, 6) End If Next c Next i 'copie ligne de titre Range("A1:C1").Copy Worksheets("Feuil9").Range("F1") End Sub
Cela peut parfois recopier plusieurs fois des lignes, peut-être pas ce que tu souhaites.
Bonjour yg_be,
merci beaucoup ! la 1ère suffisait et répond parfaitement au problème ; donc merci pour la variante ! Ça permet de progresser encore plus. En effet, mon imbrication était foireuse, c'est la raison pour laquelle je ne l'avais pas mise pour ne pas compliquer le code inutilement. Bien noté pour l'indentation, faut que je progresse aussi là-dessus !
merci encore ! Résolu avec brio !
merci beaucoup ! la 1ère suffisait et répond parfaitement au problème ; donc merci pour la variante ! Ça permet de progresser encore plus. En effet, mon imbrication était foireuse, c'est la raison pour laquelle je ne l'avais pas mise pour ne pas compliquer le code inutilement. Bien noté pour l'indentation, faut que je progresse aussi là-dessus !
merci encore ! Résolu avec brio !
Cordialement.