Recherche sur le classeur : plusieurs onglets ?

bond

XLDnaute Occasionnel
Dans la fonction de recherche il y a l'option 'Dans : ' pour choisir Feuille ou Classeur.

En enregistrement automatique, le code VBA est identique quelque soit l'option choisie, et je ne sais pas quel paramètre de Find permet de jouer avec cette option.

Mon plan B serait d'utiliser une boucle sur toutes les feuilles du classeur comme je l'ai vu sur des discussions du forum, mais je trouve ça un peu lourd d'autant qu'apparement Mr Excel a prévu le truc...

Mon fichier 'enregistrement auto de Vba:mad:
 

Pièces jointes

  • RechClasseur.xls
    46.5 KB · Affichages: 60

Pierrot93

XLDnaute Barbatruc
Re : Recherche sur le classeur : plusieurs onglets ?

Bonjour,

Mon plan B serait d'utiliser une boucle sur toutes les feuilles du classeur comme je l'ai vu sur des discussions du forum, mais je trouve ça un peu lourd d'autant qu'apparement Mr Excel a prévu le truc...

bah..; à ma connaissance, tu es obligé de faire une boucle, la méthode "find" vba ne permettant pas la recherche sur tout le classeur....

bonne soirée
@+
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Recherche sur le classeur : plusieurs onglets ?

Bonjour Bond, bonjour le forum,

Pas bien compris ton code... Tu vas te retrouver avec la dernière cellule trouvée active (si elle existe, sinon ça plante). En plus pour sélectionner une cellule d'un onglet il faut que l'onglet soit sélectionné au préalble. Mais bon, regarde le code ci-dessous :
Code:
Sub Macro8()
Dim sh As Worksheet
Dim r As Range
For Each sh In Sheets
    sh.Activate
    Set r = sh.Cells.Find(What:="27c27", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
        :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
        False, SearchFormat:=False)
    If Not r Is Nothing Then r.Activate
 
    Set r = sh.Cells.Find(What:="28a28", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
        :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
        False, SearchFormat:=False)
    If Not r Is Nothing Then r.Activate
Next sh
End Sub

[Édition]
Bonjour Pierrot on s'est croisé
 

bond

XLDnaute Occasionnel
Re : Recherche sur le classeur : plusieurs onglets ?

Ah ben c pas cool ! :mad:
VBA ne sait pas tout faire de ce qui permis dans l'appli, quelle déception :eek:

Sinon pas éviter la boucle, j'ai trouvé le code suivant comme Plan B préféré :
Code:
Sheets(Array("Feuil1", "Feuil1 (2)")).Select
Cells.Find(What:="28a28", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
    :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
    False, SearchFormat:=False).Activate
ActiveSheet.Select

Merci Pierro, Robert, pour cette confirmation [hélas].
 

Pierrot93

XLDnaute Barbatruc
Re : Recherche sur le classeur : plusieurs onglets ?

Ah ben c pas cool ! :mad:
VBA ne sait pas tout faire de ce qui permis dans l'appli, quelle déception :eek:

Sinon pas éviter la boucle, j'ai trouvé le code suivant comme Plan B préféré :
Code:
Sheets(Array("Feuil1", "Feuil1 (2)")).Select
Cells.Find(What:="28a28", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
    :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
    False, SearchFormat:=False).Activate
ActiveSheet.Select

Merci Pierro, Robert, pour cette confirmation [hélas].

Re,

aarf, chez moi ne fonctionne que si valeur est sur la 1ère feuille, sinon l'initialisation d'un objet "range" renvoie "nothing"...
 

Discussions similaires

Statistiques des forums

Discussions
312 757
Messages
2 091 775
Membres
105 072
dernier inscrit
Pechon