![]() |
|
Forum
|
|
|
#1 (permalink) |
|
XLDnaute Junior
Date d'inscription: mai 2005
Messages: 91
|
Bonjour cher usagers du forum,
Je cherche le code vba pour identifier les feuilles actives, la fonction ActiveSheet.Name ne retourne que la première feuille qui est active. ex. sélection de plusieurs feuilles Sheets(Array('Bateaux', 'Cédule', 'Inventaires', 'USA')).Select vSheet = ActiveSheet.Name 'donnera que Bateaux Peut-être qu'il faudrait une loop qui vérifie le status de chaque feuille ? Merci pour votre aide. Eric |
|
|
|
| ANNONCES | |||
|
|
|
|
#3 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: mars 2005
Localisation: Nantes, France, Terre
Version Excel : Excel 2003 (PC)
Messages: 998
|
Bonsoir Guitarde,
Je pense que ton pb vient de la propriété Name en elle même, qui fort logiquement ne peux concerner qu'un objet, ou un ensemble d'objet, donc Une chose. Ce que tu peux faire c'est de boucler sur tes feuilles avec une For Each Feuil... Next Feuil (Feuil = variable à définir) dans ton classeur, et de tester chacune d'elles en implémentant les noms des actives au passage... Bon courega, Bfr
__________________
|
|
|
|
|
|
#4 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: mars 2005
Localisation: Nantes, France, Terre
Version Excel : Excel 2003 (PC)
Messages: 998
|
Bonsoir Guitarde,
Je pense que ton pb vient de la propriété Name en elle même, qui fort logiquement ne peux concerner qu'un objet, ou un ensemble d'objet, donc Une chose. Ce que tu peux faire c'est de boucler sur tes feuilles avec une For Each Feuil... Next Feuil (Feuil = variable à définir) dans ton classeur, et de tester chacune d'elles en implémentant les noms des actives au passage... Bon courega, Bfr
__________________
|
|
|
|
|
|
#5 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: mars 2005
Localisation: Nantes, France, Terre
Version Excel : Excel 2003 (PC)
Messages: 998
|
Oups :whistle: Didier, excuses !
Y a eu collisions de Didier, dur à éviter surtout que je ne suis pas copain avec les onerror goto .... Bonne soirée, Bfr
__________________
|
|
|
|
|
|
#6 (permalink) |
|
Guest
Messages: n/a
|
Avec la boucle je crois que je vais pouvoir ajouter le nom des feuilles actives dans une variable de type collection.
Je pourrais plus loin dans ma macro re-sélectionner les feuilles en utilisant cette variable. Merci pour votre aide. Eric |
|
|
|
#7 (permalink) |
|
Guest
Messages: n/a
|
J'ai finalement réussi avec une variable de type ARRAY. La boucle détermine les feuilles qui sont actives, ajoute le nom des feuilles dans la variable.
Ensuite je fais différentes opérations et ensuite je peux ré-activer les feuilles comme au départ. Sub test() Dim F As Worksheet Dim MyActiveSheets() As String Dim X As Byte For Each F In Windows(1).SelectedSheets ReDim Preserve MyActiveSheets(X) MyActiveSheets(X) = F.Name X = X + 1 Next F 'All my other code Worksheets(MyActiveSheets).Select End Sub |
|
|
| ANNONCES | |
![]() |
| Liens sociaux |
| Outils de la discussion | |
|
|