Réaliser un Ctrl+f en VBA dans excel

Wushutao

XLDnaute Nouveau
Bonjour,

Je souhaite réaliser un bouton qui aurait le même résultat qu'un Ctrl+f dans Excel, j'ai fait des recherches sur ce forum mais je n'ai pas trouvé ma réponse :(

Voici le 1er code :
Code:
Private Sub CommandButton1_Click() 

Application.SendKeys ("^F") 

End Sub

Voici le 2nd code :
Code:
Private Sub CommandButton1_Click() 

Set objShell = WScript.CreateObject("WScript.Shell") 
objShell.sendkeys "^F" 

End Sub


Les deux ne fonctionnent pas, pourriez-vous m'aider ?

Merci d'avance
 

Staple1600

XLDnaute Barbatruc
Re : Réaliser un Ctrl+f en VBA dans excel

Bonjour à tous

Une autre façon pour un même résultat

Code:
Sub test()
Application.CommandBars("Edit").Controls.Item("Rechercher...").Execute
End Sub
Et une fois Rechercher affiché que veux-tu faire?

Ne serait-ce pas plutot une recherche (Find) en VBA que tu veux faire?

De ce genre?
VB:
Sub RechercheMot()
Dim Var As String
On Error Resume Next
Var = InputBox("Mot à rechercher ?", , "zzzz")
'pour ne rien supprimer en cas d' ECHAP ou D'ANNULER
If Var = "" Then Exit Sub
Set MotTrouvé = Cells.Find(What:=Var)
If Not MotTrouvé Is Nothing Then
MotTrouvé.Select
'confirmation de suppression
Style = vbYesNo + vbDefaultButton1
Msg = "Suppression de la ligne"
Title = "Attention suppression de la ligne."
Réponse = MsgBox(Msg, Style, Title)
If Réponse = vbYes Then
ActiveCell.EntireRow.Select
Selection.Delete Shift:=xlUp
End If
Else
MsgBox "Rien trouvé"
Exit Sub
End If
[A1].Select
End Sub
source
 
Dernière édition:

Excel_lent

XLDnaute Impliqué
Re : Réaliser un Ctrl+f en VBA dans excel

Bonjour à tous et aux autres,

étant moi aussi bloqué, j'ai essayé (avec succès) le
Code:
Private Sub CommandButton1_Click()
  Range("A1").Select [I][COLOR=Green]'ou autre mais[/COLOR] [COLOR=Green]indispensable[/COLOR][/I]
  CommandBars("Edit").Controls(14).Execute
End Sub
Ajout : salut Staple, je pense que même avec ta formulation, la sélection est indispensable (avecle bouton de commande).
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Réaliser un Ctrl+f en VBA dans excel

Bonjour Excel_Lent


Chez moi
Range("A1").Select 'ou autre mais indispensable

n'est pas indispensable ;)

(cf mon précédent message)

edit: sauf si par exemple une shape est sélectionnée lorsqu'on lance la macro par exemple
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Réaliser un Ctrl+f en VBA dans excel

Re


A part à l'utiliser comme cela, je ne vois ou veut en venir le posteur

(Avec une plage sélectionnée au préalable contenant la string toto)

Code:
Sub test()
'Déclarations
Dim Nom As String
Nom = "toto"
SendKeys Nom
SendKeys "{ENTER}"
Application.CommandBars("Edit").Controls.Item("Rechercher...").Execute
End Sub
En plus complet et en hommage à Excel_Lent
Code:
Sub test_Excel_Lent()
'Déclarations
Dim Nom As String
Nom = "toto"
SendKeys Nom
SendKeys "{ENTER}"
SendKeys "{DOWN}"
SendKeys "{ENTER}"
CommandBars("Edit").Controls.Item(14).Execute
End Sub
 
Dernière édition:

Wushutao

XLDnaute Nouveau
Re : Réaliser un Ctrl+f en VBA dans excel

Vous êtes super réactive et performant sur ce forum :eek: , un grand merci :)

Je ne comprend pas le Application.SendKeys ("^f") ne fonctionne pas chez moi, mais j’ai trouvé la solution grâce à vous :

Code:
Private Sub CommandButton1_Click() 

Range(A1:G460).Select
Application.Dialogs(xlDialogFormulaFind).Show

End Sub

Avec ce code, le bouton fonctione :)
 

Discussions similaires

Réponses
12
Affichages
243

Statistiques des forums

Discussions
312 149
Messages
2 085 773
Membres
102 971
dernier inscrit
Mathieu49