Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

copier ligne après recherche cellule

4 réponses
Avatar
Sylian
Bonjour à tous !

J'ai une feuille (fl1) avec un tableau et plein de noms différents.
J'aimerai créer une macro qui, lorsque je sélectionne une colonne avec
la souris et que je lance la macro après, il me demande le mot a rechercher.
Ensuite, si il trouve le mot, il copie la ligne entière où il le trouve
vers la 2ème feuille (fl2) à la dernière ligne du nouveau tableau.

Bref, je veux extraire certaines lignes en fonction d'un mot clef dans
une colonne sélectionner à la souris.

J'avais commencé par un for each cell in selection mais là, je bloque
pour connaitre le numéro de la colonne que j'ai séléctionner et pour
connaitre la ligne à copier une fois qu'il à trouver le mot :(

Merci de votre aide !

4 réponses

Avatar
JB
Bonjour,

-On suppose que A est remplie
-On ne récupère que les premier de la colonne

mot = InputBox("mot")
Columns(ActiveCell.Column).Select
Set result = Selection.Find(What:=mot, LookIn:=xlValues,LookAt:=
XlWhole)
If result Is Nothing Then
MsgBox "Non trouvé"
Else
Rows(result.Row).Copy Sheets(2).[a65000].End(xlUp).Offset(1, 0)
End If


JB
http://boisgontierjacques.free.fr

On 22 sep, 13:27, Sylian wrote:
Bonjour à tous !

J'ai une feuille (fl1) avec un tableau et plein de noms différents.
J'aimerai créer une macro qui, lorsque je sélectionne une colonne avec
la souris et que je lance la macro après, il me demande le mot a recher cher.
Ensuite, si il trouve le mot, il copie la ligne entière où il le trou ve
vers la 2ème feuille (fl2) à la dernière ligne du nouveau tableau.

Bref, je veux extraire certaines lignes en fonction d'un mot clef dans
une colonne sélectionner à la souris.

J'avais commencé par un for each cell in selection mais là, je bloque
pour connaitre le numéro de la colonne que j'ai séléctionner et pour
connaitre la ligne à copier une fois qu'il à trouver le mot :(

Merci de votre aide !


Avatar
Sylian
Merci beaucoup ! Moi qui partait dans des boucles en essayant de
déterminé le numéro de la colonne sélectionné ainsi que le numéro de la
ligne une fois le mot trouvé ! (ouf!) Je vais essayé ça. Merci beaucoup JB !

Bonjour,

-On suppose que A est remplie
-On ne récupère que les premier de la colonne

mot = InputBox("mot")
Columns(ActiveCell.Column).Select
Set result = Selection.Find(What:=mot, LookIn:=xlValues,LookAt: > XlWhole)
If result Is Nothing Then
MsgBox "Non trouvé"
Else
Rows(result.Row).Copy Sheets(2).[a65000].End(xlUp).Offset(1, 0)
End If


JB
http://boisgontierjacques.free.fr

On 22 sep, 13:27, Sylian wrote:
Bonjour à tous !

J'ai une feuille (fl1) avec un tableau et plein de noms différents.
J'aimerai créer une macro qui, lorsque je sélectionne une colonne avec
la souris et que je lance la macro après, il me demande le mot a rechercher.
Ensuite, si il trouve le mot, il copie la ligne entière où il le trouve
vers la 2ème feuille (fl2) à la dernière ligne du nouveau tableau.

Bref, je veux extraire certaines lignes en fonction d'un mot clef dans
une colonne sélectionner à la souris.

J'avais commencé par un for each cell in selection mais là, je bloque
pour connaitre le numéro de la colonne que j'ai séléctionner et pour
connaitre la ligne à copier une fois qu'il à trouver le mot :(

Merci de votre aide !






Avatar
Sylian
Re-bonjour
Oserais-je abuser ?

A vrai dire la routine fonctionne à merveille mais avec un seul nom.
Imaginons que ma colonne comporte les noms TOTO1; TOTO3 et TOTO7.
J'aimerai que la fonction m'ajoute une ligne pour chaque TOTO trouvé
quand je renseigne le champ "mot" par " TOTO* "
C'est possible ça ?

Merci d'avance pour votre aide qui fut vraiment précieuse les fois
précédentes

--------------------------------------------------------------------

Merci beaucoup ! Moi qui partait dans des boucles en essayant de
déterminé le numéro de la colonne sélectionné ainsi que le numéro de la
ligne une fois le mot trouvé ! (ouf!) Je vais essayé ça. Merci beaucoup
JB !

Bonjour,

-On suppose que A est remplie
-On ne récupère que les premier de la colonne

mot = InputBox("mot")
Columns(ActiveCell.Column).Select
Set result = Selection.Find(What:=mot, LookIn:=xlValues,LookAt: >> XlWhole)
If result Is Nothing Then
MsgBox "Non trouvé"
Else
Rows(result.Row).Copy Sheets(2).[a65000].End(xlUp).Offset(1, 0)
End If


JB
http://boisgontierjacques.free.fr

On 22 sep, 13:27, Sylian wrote:
Bonjour à tous !

J'ai une feuille (fl1) avec un tableau et plein de noms différents.
J'aimerai créer une macro qui, lorsque je sélectionne une colonne avec
la souris et que je lance la macro après, il me demande le mot a
rechercher.
Ensuite, si il trouve le mot, il copie la ligne entière où il le trouve
vers la 2ème feuille (fl2) à la dernière ligne du nouveau tableau.

Bref, je veux extraire certaines lignes en fonction d'un mot clef dans
une colonne sélectionner à la souris.

J'avais commencé par un for each cell in selection mais là, je bloque
pour connaitre le numéro de la colonne que j'ai séléctionner et pour
connaitre la ligne à copier une fois qu'il à trouver le mot :(

Merci de votre aide !








Avatar
JB
Bonsoir,

Sub essai()
mot = InputBox("mot")
If mot = "" Then Exit Sub
Columns(ActiveCell.Column).Select
Set c = Selection.Find(mot, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
premier = c.Address
Do
Rows(c.Row).Copy Sheets(2).[a65000].End(xlUp).Offset(1, 0)
Set c = Selection.FindNext(c)
Loop While Not c Is Nothing And c.Address <> premier
End If
End Sub


JB
http://boisgontierjacques.free.fr

On 4 oct, 19:02, Sylian wrote:
Re-bonjour
Oserais-je abuser ?

A vrai dire la routine fonctionne à merveille mais avec un seul nom.
Imaginons que ma colonne comporte les noms TOTO1; TOTO3 et TOTO7.
J'aimerai que la fonction m'ajoute une ligne pour chaque TOTO trouvé
quand je renseigne le champ "mot" par " TOTO* "
C'est possible ça ?

Merci d'avance pour votre aide qui fut vraiment précieuse les fois
précédentes

--------------------------------------------------------------------




Merci beaucoup ! Moi qui partait dans des boucles en essayant de
déterminé le numéro de la colonne sélectionné ainsi que le nu méro de la
ligne une fois le mot trouvé ! (ouf!) Je vais essayé ça. Merci be aucoup
JB!

Bonjour,

-On suppose que A est remplie
-On ne récupère que les premier de la colonne

mot = InputBox("mot")
Columns(ActiveCell.Column).Select
Set result = Selection.Find(What:=mot, LookIn:=xlValues,LookAt :=
XlWhole)
If result Is Nothing Then
MsgBox "Non trouvé"
Else
Rows(result.Row).Copy Sheets(2).[a65000].End(xlUp).Offset(1, 0)
End If

JB
http://boisgontierjacques.free.fr

On 22 sep, 13:27, Sylian wrote:
Bonjour à tous !

J'ai une feuille (fl1) avec un tableau et plein de noms différents.
J'aimerai créer une macro qui, lorsque je sélectionne une colonne avec
la souris et que je lance la macro après, il me demande le mot a
rechercher.
Ensuite, si il trouve le mot, il copie la ligne entière où il le trouve
vers la 2ème feuille (fl2) à la dernière ligne du nouveau table au.

Bref, je veux extraire certaines lignes en fonction d'un mot clef dans
une colonne sélectionner à la souris.

J'avais commencé par un for each cell in selection mais là, je bl oque
pour connaitre le numéro de la colonne que j'ai séléctionner et pour
connaitre la ligne à copier une fois qu'il à trouver le mot :(

Merci de votre aide !- Masquer le texte des messages précédents -




- Afficher le texte des messages précédents -