Recherche avec une formule
Bonjour,
voilà mon problème: je dois dans une feuille de calcul excel, trouver un chiffre ex: 11234. Mais au paravent, je sélectionne ce chiffre dans une cellule d'une autre feuille. Y-a-t-il un moyen, soit avec cells.find ou une autre fonction, que ce soit le résultat de la cellule sélectionner qu'il faut trouver et non le nombre en tant que tel? Ex: cells.find(What;="activecell.value") La raison de cela est que le chiffre ne sera jamais le même. Pour être plus clair, si lors de ma première recherche j'ai 11234, je trouve cela et lors de la deuxième recherche, si la case cocher est 11345, que je trouve cela et non 11234. Si je vais voir dans excel dans "rechercher et sélectionner", c'est écris formula.value et il ne peut trouver cela. Comment changer cela pour 11234?
voilà mon code tel que fait par "rechercher et sélectionner"
Sub Macro10()
Dim cellule As Range
Set cellule = Application.InputBox("entré le numéro de la cellule", , Type:=8)
cellule.Select
Selection.Copy
Windows("feuille1.xls").Activate
Cells.Find(What:="11234", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
ActiveCell.Offset(0, -1).Range("A1:I1,N1").Select
'ActiveCell.Offset(0, 12).Range("A1").Activate
Application.CutCopyMode = False
Selection.Copy
Windows("feuille2.xls").Activate
Dim cellule2 As Range
Set cellule2 = Application.InputBox("entré le numéro de la cellule", , Type:=8)
cellule2.Select
ActiveSheet.Paste
ActiveCell.Offset(3, 2).Range("A1").Select
End Sub
J'espère que c'est assez clair.
merci pour votre aide.
Bonsoir,
tu peux faire référence à une cellule dans ton instruction find, après le paramètre what:=
par exemple
Cells.Find(What:=workbooks("feuille 2.xls").worksheets("feuil1").range("A1"), After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).ActivateC'est parfait, ça fonctionne très bien. Mais le range ne sera jamais le même. Est-ce possible d'aller chercher la case sélectionné dans la feuil1 du workbooks? Genre activecell.select au lieu de range("a1"). Activecell.select ne fonctionne pas.
merci
bonsoir,
essaie ceci
Sub Macro10()
Dim cellule As Range
Set cellule = Application.InputBox("entré le numéro de la cellule", , Type:=8)
r=cellule.value
cellule.Copy
Windows("feuille1.xls").Activate
Cells.Find(What:=r, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
ActiveCell.Offset(0, -1).Range("A1:I1,N1").Select
'ActiveCell.Offset(0, 12).Range("A1").Activate
Application.CutCopyMode = False
Selection.Copy
Windows("feuille2.xls").Activate
Dim cellule2 As Range
Set cellule2 = Application.InputBox("entré le numéro de la cellule", , Type:=8)
cellule2.Select
ActiveSheet.Paste
ActiveCell.Offset(3, 2).Range("A1").Select
End SubBonjour, merci pour la réponse, ça fonctionne très bien. Merci pour l'aide.