Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Boucle for each Certaines feuilles avec CodeName

cp4

XLDnaute Barbatruc
Boujour ,

Je crois que le titre est explicite. Avec le code ci-dessous, je boucle sur certaines feuilles dont les noms sont mis dans un array.
VB:
Option Explicit
Sub BoucleForEach()
Dim Wsh As Worksheet
For Each Wsh In Worksheets(Array("A", "B"))
         With Wsh
         .Activate 'ici pour exécuter un code
         End With
      Next
End Sub
Je voudrais faire la même chose mais en utilisant le CodeName. J'ai trouvé des exemples mais pas similaire à mes attentes.

En vous remerciant par avance.
 

Pièces jointes

  • ForEachCodeName.xlsm
    14.3 KB · Affichages: 8

Dranreb

XLDnaute Barbatruc
Bonjour.
Mettez leur des CodeName avec un début identique reconnaissable.
Cette propriété String en lecture seule d'un objet Worksheet reproduit le nom VBA de cet objet dans la rubrique Microsoft Excel Objets. C'est donc le nom de l'objet dans cette rubrique qu'il faut changer pour qu'elle change. Elle n'est clé d'aucune collection hormis VBProject.VBComponents.
 
Dernière édition:

patricktoulon

XLDnaute Barbatruc
re
bonjour cp4
je ne sais si tu peux faire comme ca
tout du moins pour l'object sheets avec le codename
tu peux bien entendu récupérer le codename des feuilles mais tu obtiens un string et non un object sheets mais ca s'arrête là

quand au vbcomponent c'est encore autre chose
je ne pense pas que tu puisse faire un vbproject.vbcomponents("Feuil1").activate

donc NON!!!
 

patricktoulon

XLDnaute Barbatruc
par contre avec ton array tu peux faire comme ca
VB:
For Each Wsh In Array(Feuil1,Feuil4)

         With Wsh

         .Activate 'ici pour exécuter un code

         End With

      Next
correction "good Dranreb"
 
Dernière édition:

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…