Problème avec une macro de recherche de données

woow74

XLDnaute Nouveau
Bonjour tt le monde , je reviens vers vous car j'ai encore un petit souci avec ma macro.( enfin une macro qu'une persone de votre site a ienvoulu nous faire [^^happy17] )
la voila:

Sub search1()
Dim i As Integer
Dim MaVariable1 As String

MaVariable1 = "S30.G01.00.001"

' Boucle de recherche par ligne sur la colonne A
For i = 1 To 537
With Worksheets(1).Activate
If .Cells(i, 1).Value = MaVariable1 Then
Rows(i).Select ' Selection de la ligne
Selection.Copy 'copie de la selection
Sheets(2).Select 'changement de feuille
Rows("1:1").Select 'Selection de la première ligne
Selection.Insert Shift:=xlDown 'Insertion de la selection copier
End If
End With
Next i
End SubJ'ai TROIS problèmes :
1- elle ne marche pas quand je la lance sur mon fichier Excel devrais-je spécifier un chemin pour le fichier ouvert ou autre?

2- cette macro fait la recherche à partir d'un mot clé Mavariable1 , comment pourrais-je lui faire faire la recherche mais avec plusieurs mots clé car j'ai des lignes qui contiennent differents mots clé que je souhaites extraire...
3- Le mot clé recherché est dans une cellule qui se présente comme cela (mot clé ,'valeur') pourrais-je faire la recherche sur ce mot clé mais extraire toute la cellule avec la valeur a coté?
Merci bc
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Problème avec une macro de recherche de données

Bonjour Woow, bonjour le forum,

Comme je sais que tu ne réponds pas aux demandes de ceux qui veulent te venir en aide, j'ai hésité à te répondre... Tu es nouveau et je pense que tu dois impérativement commencer par lire la charte du forum (Lien supprimé). Elle explique les bons plans pour obtenir une réponse rapide. Et tu verras qu'avec ton fichier (ou un fichier exemple basé sur ton fichier) en pièce jointe tu auras vite une réponse.
 

woow74

XLDnaute Nouveau
Re : Problème avec une macro de recherche de données

Bonjour Robert, Bonjour le forum,

J'ai lu la charte ;)
Je ne pense pas être quelqu'un qui ne réponds pas aux demandes des gens qui veulent l'aider c'est juste que je suis nouveau sur les forums en général et donc je m'en excuse si j'ai pas été courtois...
Si vous voulez bien m'aider je laisse en PJ une copie du document que je souhaite traiter avec ma macro.
Pour bien expliquer mon problème , je ne veux garder que les lignes qui commencent par certains codes ( vous verrez la présentation de ma feuille Excel pour mieux comprendre )
Merci pour votre aide.
 

Pièces jointes

  • resultat1.xls
    22 KB · Affichages: 107
  • resultat1.xls
    22 KB · Affichages: 110
  • resultat1.xls
    22 KB · Affichages: 113

Robert

XLDnaute Barbatruc
Repose en paix
Re : Problème avec une macro de recherche de données

Bon jour Woow, bonjour le forum

j'ai modifié la macro pour qu'elle fonctionne mais pas dans le contexte du fichier en pièce jointe car il n'a qu'un seul onglet...
Code:
Sub search1()
Dim i As Integer
Dim MaVariable1 As String
MaVariable1 = "S30.G01.00.001"
' Boucle de recherche par ligne sur la colonne A
For i = 1 To 537
With Worksheets(1)
    .Activate 'il fallait mettre cette ligne à la ligne (si j'ose dire)...
If .Cells(i, 1).Value = MaVariable1 Then
    Rows(i).Select ' Selection de la ligne
    Selection.Copy 'copie de la selection
    Sheets(2).Select 'changement de feuille
    Rows("1:1").Select 'Selection de la première ligne
    Selection.Insert Shift:=xlDown 'Insertion de la selection copier
End If
End With
Next i
End Sub
Pour le reste j'ai absolument rien compris à ce que tu voulais... Désolé...
 

woow74

XLDnaute Nouveau
Re : Problème avec une macro de recherche de données

Merci Robert,
enfait quand je lance la macro , elle ne recherche que Mavariable qui est S30.G01.00.001 et du coup elle ne me revoi rien car dans les cellules il y a Mavariable,'valeur' ( S30.G01.00.001,'yori')
dc comment faire pour demander a rechercher Mavariable dans un cellule mm s'il ya une autre valeur à coté d'elle (enfin je ne sais pas si je m'explique bien)
 

woow74

XLDnaute Nouveau
Re : Problème avec une macro de recherche de données

re-bonjour Robert,
Je reviens vers toi (par rapport à mon dernier message) juste pour te dire que c'est bon sa marche à merveille maintenant j'ai fais quelques petits changements et c'est bon.
Mais j'ai un autre problème que tu pourra m'aider à résoudre ( vu que tu es un dieu du VBA ;) ) je le poste dans le message qui suit.
Encore merci
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Problème avec une macro de recherche de données

Bonjour Woow, bonjour le forum,

Désolé Woow j'ai la tête dans le c... aujourd'hui ! Mais ça y est j'ai enfin compris. En pièce jointe un exemple.

[Édition]
Nos messages se sont croisés...
Dieu du VBA ! Tu veux me mettre la honte devant tout le monde c'est ça hein ! Attend je vais t'en montrer moi des vrais balèzes et tu vas voir que mon niveau est ridicule...
 

Pièces jointes

  • Woow_v01.xls
    45 KB · Affichages: 126
Dernière édition:

woow74

XLDnaute Nouveau
Re : Problème avec une macro de recherche de données

c'est exactement les modifications que j'ai fait pour que sa marche.
Maintenant je t'expose mon autre problème (enfait c'est dans la suite de mon tout premier post mais la je le représente bien comme il faut :p ):
J'ai une macro qui fait une recherche à partir d'un fichier NIR1.txt dans un fichier RAF1.txt et qui retourne le resultat sous tableau Excel ( Je joints les différents fichiers pour mieux illustrer mes propos).
Cette macro fait la recherche très bien sur un seul fichier RAF1.txt maintenant , je veux qu'elle fasse la recherche sur un repertoire ( en parcourant tous les fichiers qui le constituent)
Comment je pourrai modifier ma macro pour prendre ça en compte? J'ai fais un essai de modification ( aussi en PJ) mais sa ne marche pas :(
et l'autre problème c'est que je n'arrive pas à joindre les fichiers mm décompressés il n ya pas d'autres alternatives pour pouvoir vous transmettre les fichiers?
Merci
 

woow74

XLDnaute Nouveau
Re : Problème avec une macro de recherche de données

Sub test()

Workbooks.OpenText Filename:= _
"D:\Users\ysebbarh.EMEA\Desktop\RAF1.txt"
Workbooks.OpenText Filename:= _
"D:\Users\ysebbarh.EMEA\Desktop\NIR1.txt"
Columns("A:A").Select
Selection.NumberFormat = "0"
Sheets.Add
ActiveSheet.Name = "Resultat"
i = 1
For j = 2 To 16
valeur = Workbooks("NIR1.txt").Sheets("NIR1").Cells(j, 1)
Workbooks("RAF1.txt").Activate
Set celluletrouvee = Range("A:A").Find(valeur)
ligne = celluletrouvee.Row
Do
Workbooks("NIR1.txt").Sheets("Resultat").Cells(i, 1) = Workbooks("RAF1.txt").Sheets("RAF1").Cells(ligne, 1)
i = i + 1
ligne = ligne + 1
Loop Until (Left(Workbooks("RAF1.txt").Sheets("RAF1").Cells(ligne, 1), 14)) = "S30.G01.00.001"
Next
End
End Sub

Donc cette macro recherche dans le fichier RAF1.txt , ce que je veux c'est lui spécifier un répertoire RAF ( qui contient plusieurs fichiers RAF*.txt) et faire la même recherche dedans.
J'espère que je suis assez clair sur ce point :)
Merci Robert
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Problème avec une macro de recherche de données

Bonjour Woow, bonjour le forum,

Je pense que tu devrais utiliser le même fil que tu as créé pour ton problème ou en créer un nouveau. Si personne se s'y est intéressé c'est souvent que les questions sont mal posées ou qu'il manque des informations. Donc à toi d'être le plus clair possible.

Quant aux fichiers trops lourds ! Tu sais il n'est pas nécessaire pour résoudre ton problème d'avoir le fichier d'origine. Bien souvent, en créant un fichier exemple basé sur ton fichier d'origine et bien plus léger (même structure, nom des onglets, macros relatives aux problèmes et une poignée de données non confidentielles), on arrive à te proposer une solution que tu transposeras à ton fichier d'origine.
Ce qu'il faut éviter c'est de demander de faire une action puis une fois qu'on t'as proposé un code dire (par exemple) : "ça convient mais au lieu de copier dans un autre onglet je voudrais copier dans un autre classeur"...
Autre solution pour les fichiers trops lourds c'est ci-joint.fr qui héberge des fichiers pendant un certain temps. Je sais qu'elle est boudée par certains dans le forum, à juste titre car, si une autre personne rencontre le même problème que toi et tombe sur ton post, elle ne pourra plus bénéficier de ton fichier qui aura été supprimer par l'hébergeur...

Sinon, le soit-disant Dieu du VBA a de bien piètres connaissances en ce qui concerne les dossiers, sous-dossiers, fichiers etc... Je m'y attaque rarement et uniquement sous la torture... Mais ne t'en fais pas, il y a plein d'autres membres ici et des costauds de chez costaud pour te venir en aide.
 

Discussions similaires

Réponses
2
Affichages
152

Statistiques des forums

Discussions
312 855
Messages
2 092 852
Membres
105 544
dernier inscrit
Eden90