Macro

Médite -  
 Médite -
Bonjour,

J'ai une macro de recherche que j'ai trouvé sur votre site et que j'ai déjà un peu modifié pour pouvoir faire mes recherches mais je voudrais ajouter une fonction supplémentaire.

A la feuil2 lorsque j'utilise la cellule A2 pour lui demander ce que je recherche et qu'il me saisi en ligne A à C toutes les données. Est.ce possible que si je double clique sur une donnée recherchée ca me renvoie à la feuil1 où se situe l'information (un peu un retour à l'information de base). Est.ce que quelqu'un peut m'aider à compléter cette macro ?

Merci d'avance pour votre aide.

Sub cherche_texte()
Dim adr As String
li = 7
With Sheets("Feuil2")
tro = .Range("a2")
.Range("a7:a1000") = MEI
.Range("b7:b1000") = MEI
.Range("c7:b1000") = MEI

End With
With Sheets("Feuil1").Range("C19:J22")
Set c = .Find(tro, LookIn:=xlValues)
If Not c Is Nothing Then
preadr = c.Address
Do
adr = c.Row
Sheets("Feuil2").Cells(li, 1).Value = Cells(adr, 3) & "-" & Cells(adr, 6)
Sheets("Feuil2").Cells(li, 2).Value = Cells(adr, 9)
Sheets("Feuil2").Cells(li, 3).Value = Cells(adr, 8)
li = li + 1
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> preadr
End If
End With
End Sub

A voir également:

9 réponses

Le Pingou Messages postés 12720 Date d'inscription   Statut Contributeur Dernière intervention   1 468
 
Bonjour,
Au passage : pour ceci
With Sheets("Feuil2") 
tro = .Range("a2") 
.Range("a7:a1000") = MEI 
.Range("b7:b1000") = MEI 
.Range("c7:b1000") = MEI 

End With

A remplacer par :
With Sheets("Feuil2") 
tro = .Range("a2") 
.Range("A7:C1000") .Clear 
End With


Quand est-il de ma proposition de procédure ?
1
Le Pingou Messages postés 12720 Date d'inscription   Statut Contributeur Dernière intervention   1 468
 
Bonjour,
Ma proposition : https://www.cjoint.com/?fmxui4xR4B
1
Le Pingou Messages postés 12720 Date d'inscription   Statut Contributeur Dernière intervention   1 468
 
Bonjour,
Avec cette procédure, à mettre dans le module de la feuille 2, le double clic sur la cellule A2 activera la feuille 1 :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 
If Target.Address = "$A$2" Then 
 Sheets("feuil1").Activate 
End If 
End Sub


En marge: quand à complèter votre macro, il faudrait déjà comprendre se qu'elle est sensé réaliser ( déjà avec un [MEI] qui sort de nul part !)
--
Salutations.
Le Pingou
0
Médite
 
Bonjour,

Tout d'abord je tiens à te remercier pour ta réponse.

Tu peux remplacer le mot MEI par .clear.

La cellule A2 sert à mettre le mot que je recherche. Exemple : 52289JJJ

Ca m'affiche le résultat à partir de la ligne 7

52289JJJ 01.02.2010 K (Ligne A7) Idem pour les autres infos (Ligne B7)....
52289JJJ 01.02.2010L (Ligne A8)
52289JJJ 01.05.2010O (Ligne A9)

Je voudrais rajouter que lorsque je clique sur le 01.02.2010L ca m'ouvre la feuil1 et la ligne de la cellule où il a été cherché l'information. :-)

Merci d'avance :-)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Médite
 
Oui ca me renvoie à la feuil1 mais je voudrais qu'il me renvoie à la ligne exact où se trouve la donnée. Comment est-ce qu'il faut faire?

Oui merci pour tes conseils. :-)
0
Le Pingou Messages postés 12720 Date d'inscription   Statut Contributeur Dernière intervention   1 468
 
Bonjour,
Oui mais comment est le résulta exact (par exemple dans la ligne 7 )
car ce n'est pas :
52289JJJ 01.02.2010 K (Ligne A7) Idem pour les autres infos (Ligne B7)....

mais peut-être selon votre code (les valeurs des cellules C22 et F22 sont concaténées) , comme ceci dans l'ordre cellule A7;B7;C7

Valeur Col 3/ li 22-Valeur Col 6/ li 22 ; Valeur Col 9/ li 22 ; Valeur Col 8/ li 22

Est-ce correct ?
0
Médite
 
https://www.cjoint.com/?fmsiSLV2hJ

Voici le modèle, j'ai dit ce que j'aurais souhaité faire en feuil2

J'espère que tu pourras m'aider
0
Médite
 
Oui c'est exact c'est pour ca que je voudrais que ca me renvoie à la ligne. :-)
0
Médite
 
Superbe c'est exactement ce que je voulais. Je te remercie infiniment Pingou.

:-) ;-)
0