Problème pour copier des lignes Excel
Résolu
Utilisateur anonyme
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
J'ai 2 feuilles excel 1 et 2 :
Je veux utiliser une fonction qui permet de chercher le mot "DEPASSEMENT" dans une colonne de la feuille2 et s'il existe je veux copier toutes les lignes qui contiennent ce mot dans la feuille1.
Prière si quelqu'un peut m'aider à résoudre ce problème.
J'ai 2 feuilles excel 1 et 2 :
Je veux utiliser une fonction qui permet de chercher le mot "DEPASSEMENT" dans une colonne de la feuille2 et s'il existe je veux copier toutes les lignes qui contiennent ce mot dans la feuille1.
Prière si quelqu'un peut m'aider à résoudre ce problème.
A voir également:
- Problème pour copier des lignes Excel
- Liste déroulante excel - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
- Comment copier une vidéo youtube - Guide
- Déplacer colonne excel - Guide
3 réponses
Salut,
j'ai 2 solutions à te proposer.
j'espère qu'au moins une des 2 te conviendra...?!
en supposant que la colonne dans laquelle le mot "DEPASSEMENT" se trouve est la colonne A de Feuil2.
la méthode sans macro :
dans la cellule A1 de Feuil1, tape la formule suivante :
=SI(Feuil2!$A1="DEPASSEMENT";SI(Feuil2!A1<>"";Feuil2!A1;"");"")
tire la cellule sur le nombre de colonnes nécessaires
puis tire la ligne ainsi obtenue sur le nombre de lignes nécessaires.
la méthode avec macro :
Sub copie()
Application.ScreenUpdating = False
Dim cellule As Range
Dim ligne As String
For Each cellule In Worksheets("Feuil2").Range("A1:A65536")
Worksheets("Feuil2").Activate
If cellule.Value = "DEPASSEMENT" Then
If IsEmpty(Worksheets("Feuil1").Range("A65536").End(xlUp)) Then
Rows(cellule.Row).Copy
Worksheets("Feuil1").Activate
Worksheets("Feuil1").Range("A65536").End(xlUp).Select
ActiveSheet.Paste
Else
Rows(cellule.Row).Copy
Worksheets("Feuil1").Activate
ligne = Worksheets("Feuil1").Range("A65536").End(xlUp).Row
Range("A" & ligne + 1).Select
ActiveSheet.Paste
End If
End If
Next cellule
Application.CutCopyMode = False
Worksheets("Feuil1").Activate
End Sub
avec la macro tu n'as que des lignes remplies en Feuil1.
tu peux l'avoir sans macro simplement en faisant un tri sans cellule vide.
j'ai 2 solutions à te proposer.
j'espère qu'au moins une des 2 te conviendra...?!
en supposant que la colonne dans laquelle le mot "DEPASSEMENT" se trouve est la colonne A de Feuil2.
la méthode sans macro :
dans la cellule A1 de Feuil1, tape la formule suivante :
=SI(Feuil2!$A1="DEPASSEMENT";SI(Feuil2!A1<>"";Feuil2!A1;"");"")
tire la cellule sur le nombre de colonnes nécessaires
puis tire la ligne ainsi obtenue sur le nombre de lignes nécessaires.
la méthode avec macro :
Sub copie()
Application.ScreenUpdating = False
Dim cellule As Range
Dim ligne As String
For Each cellule In Worksheets("Feuil2").Range("A1:A65536")
Worksheets("Feuil2").Activate
If cellule.Value = "DEPASSEMENT" Then
If IsEmpty(Worksheets("Feuil1").Range("A65536").End(xlUp)) Then
Rows(cellule.Row).Copy
Worksheets("Feuil1").Activate
Worksheets("Feuil1").Range("A65536").End(xlUp).Select
ActiveSheet.Paste
Else
Rows(cellule.Row).Copy
Worksheets("Feuil1").Activate
ligne = Worksheets("Feuil1").Range("A65536").End(xlUp).Row
Range("A" & ligne + 1).Select
ActiveSheet.Paste
End If
End If
Next cellule
Application.CutCopyMode = False
Worksheets("Feuil1").Activate
End Sub
avec la macro tu n'as que des lignes remplies en Feuil1.
tu peux l'avoir sans macro simplement en faisant un tri sans cellule vide.
Je suis entrain d'essayer la première mèthode car la deuxième je n'ai pas bien saisie, car c'est la 1ère fois que j'utilise le macro .
Est ce qu'il y'a possibilité d'afficher seulement des lignes non vides?