|
|
|
|
Bonjour,
J'ai besoin de votre aide...
Dans grand un fichier excel contenant 'moult' lignes, je voudrais créer une macro qui me permettrai de rechercher un mot, puis de sélectionner les lignes dans lesquelles ce mot apparait, puis finalement de les copier pour les transposer à un autre endroit (autre classeur ou feuille)... (ouf !!)
Bref je vois pas trop comment m'y prendre..
Si vous avez des idées, je frôle la tendinite du pouce à force de Ctrl+C, Crtl+V
Merci
Configuration: Windows XP Firefox 3.0.10
Salut,
|
Ok
|
[..] et non le mot n'a pas besoin d'être modifé, car le mot-clé va varier en fonction des informations que je recherche dans cette liste.
|
Bonjour,
Option Explicit
Sub Traitement()
Dim Plage As Range, Cible As Range, Ligne As Long
Dim Feuille As Worksheet, Resultat As Worksheet
' Ne pas effectuer l'affichage pendant la macro
' Ceci permet de minimiser le temps d'exécution
' Enlever le commentaire
'Application.ScreenUpdating = False
' Définition de la plage de recherche
Set Plage = ActiveSheet.UsedRange
Set Feuille = ActiveSheet
' Ajout d'une nouvelle feuille recevant les copies
ActiveWorkbook.Sheets.Add.Name = "Resultat"
Set Resultat = ActiveSheet
' Balayage de la plage de données
Feuille.Activate
For Each Cible In Plage
' Validation du mot clé recherché
If (Cible.Value = "Mot_Recherché") Then
' Sélection de la ligne
Cible.EntireRow.Select
' Lance la copie
Selection.Copy
' Changement de feuille
Resultat.Activate
' Déterminer à quel ligne copier le résultat
Ligne = (Range("A1:A65536").End(xlDown).Row + 1)
' Sélection de l'emplacement pour copier
Range("A" & Ligne).Select
' Copie
ActiveSheet.Paste
' Désactivation du mode copier/coller
Application.CutCopyMode = False
' Retour à la feuille de recherche
Feuille.Activate
End If
Next Cible
' Réactiver l'affichage
' Enlever le commentaire si enlever en haut
'Application.ScreenUpdating = True
End Sub
'
Lupin ~L'essentiel est invisible pour les yeux~ ~On ne voit bien qu'avec le coeur~ |