Control "F"

Résolu/Fermé
Viking58 Messages postés 186 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 5 janvier 2018 - Modifié par Viking58 le 14/08/2015 à 15:57
Viking58 Messages postés 186 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 5 janvier 2018 - 19 août 2015 à 17:16
Bonjour.

J'ai créé un bouton qui me lance la fonction de recherche Ctrl F.


Private Sub CommandButton3_Click()
Application.CommandBars("Edit").Controls.Item("Rechercher...").Execute
End Sub

Quand on utilise cette fonction de recherche, il faut parfois modifier quelques réglages, comme, par exemple, le respect de la casse.
Malheureusement, dés que la feuille est fermée, ces réglages disparaissent.
Il faut donc les remettre à chaque lancement de la feuille.

Je sais que cette fonction n'est pas une fonction Excel.

Existe-t-il un moyen de garder ces réglages à chaque lancement ?

Sinon, y-a-t-il une macro qui existe correspondant à cette commande Ctrl F ?
J'ai passé des heures à chercher un équivalent en VBA, qui fonctionne bien, mais sans succès.


Merci




A voir également:

5 réponses

Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
14 août 2015 à 16:33
Bonjour,

Adaptes ce code :
Sub EssaiBoiteDeDialogueIntégréeExcel()
Dim dbx As Dialog
  Set dbx = Application.Dialogs(xlDialogFormulaReplace)
  'Arguments : find_text, replace_text, look_at, look_by, active_cell, match_case, match_byte
  Rep = dbx.Show("Essai", "Test")
End Sub


0
Viking58 Messages postés 186 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 5 janvier 2018 7
16 août 2015 à 19:30
Merci Patrice33740.

Ton code fonctionne très bien, mais ce n'est pas ce que je cherche.
Je ne veux pas remplacer un texte par un autre.
Je veux faire une simple recherche type Ctrl F, mais qui garde en mémoire la coche "Respecter la casse". (sinon, des tas de mots ou chiffres ne sont pas trouvés)
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
16 août 2015 à 22:28
Tous les arguments sont dans la réponse !!!
Il faut donc :
  Rep = dbx.Show(, , , , , True)
0
Viking58 Messages postés 186 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 5 janvier 2018 7 > Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023
17 août 2015 à 13:28
Merci Patrice33740.

Devant ce petit soucis, j'ai repris ou modifié certaines petites macros.
Tout est rentré dans l'ordre.
Par contre, est-il possible de mettre en surbrillance le mot ou le chiffre trouvé ?
Bon après midi.
0
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 7 239
16 août 2015 à 20:13
Bonjour,

Je dirais que c'est plutôt l'inverse, tu en trouveras moins puisque si tu cherches "lundi" tu ne trouveras pas "Lundi". Mais bon, tu sais ce que tu as besoin.
Fait une recherche bidon avec les paramètres qui t'intéressent à l'ouverture du classeur, ils restent sélectionnés. Dans ThisWorkbook :
Private Sub Workbook_Open()
    Dim c As Range
    Set c = Cells.Find(What:="rien", MatchCase:=True)
End Sub

Sinon récupérer un raccourci très utilisé n'est pas très conseillé...

eric
0
Viking58 Messages postés 186 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 5 janvier 2018 7
16 août 2015 à 20:26
Je dois passer à coté de quelque chose. Car:

Si je ne coche pas "Respecter la casse", la recherche ne trouve pas des mots que j'ai devant les yeux ou saute certaines cellules contenant ce mot.
Si, par exemple, la cellule contient: Maurice Dugenou, et que je recherche Dugenou, si je n'ai pas coché cette case, rien n'est trouvé. Il me faut taper Maurice Dugenou pour que la recherche aboutisse.


Windows 8.1 Office 2013
0
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 7 239
16 août 2015 à 22:37
Si tu veux trouver le maximum de cellules les 2 options 'Respecter la casse' et 'Totalité du contenu de la cellule' doivent être décochées. C'est le choix à l'ouverture qui est donc correct.
Clique sur ? de la boite de dialogue pour l'aide.
eric
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
Modifié par Patrice33740 le 16/08/2015 à 23:07
Pour les 2 cases décochées : :
Sub EssaiBoiteDeDialogueIntégréeExcel()
Dim dbx As Dialog
  Set dbx = Application.Dialogs(xlDialogFormulaReplace)
  'Arguments : find_text, replace_text, look_at, look_by, active_cell, match_case, match_byte
  Rep = dbx.Show("", "", xlPart, xlByRows, , False, False)
End Sub
0

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

Posez votre question
Viking58 Messages postés 186 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 5 janvier 2018 7
19 août 2015 à 17:16
Merci Patrice33740.

Comme dis plus haut, devant ce petit soucis, j'ai repris ou modifié certaines petites macros.
Tout est rentré dans l'ordre.
0