Boucle sur nom de feuille

91arno78 Messages postés 8 Date d'inscription mardi 9 août 2005 Statut Membre Dernière intervention 10 août 2005 - 9 août 2005 à 11:52
91arno78 Messages postés 8 Date d'inscription mardi 9 août 2005 Statut Membre Dernière intervention 10 août 2005 - 9 août 2005 à 14:29
Salut tout le monde je suis un petit nouveau dans le circuit!!!

Voilà j'ai un petit problème et j'espère que l'un de vous pourra m'aider:

j'aimerais faire une boucle dans VB sur des feuilles d'excel qui se nomment "classeur1", "classeur2", classeur3" etc... donc vous voyez mon problème? en fait j'aimerais donc boucler sur un iterateur i du style: for i= 1 to n, Windows("classeur i".xls).select ....


C'est compréhensible???

Merci pour votre aide.

Arno

9 réponses

fcampagne Messages postés 195 Date d'inscription vendredi 3 juin 2005 Statut Membre Dernière intervention 13 juillet 2006 3
9 août 2005 à 11:55
Slt

il suffit de concaténer le nom de la feuille avec ton indice de boucle



for i= 1 to n

Windows("classeur " & i & ".xls").select

next
0
Utilisateur anonyme
9 août 2005 à 11:58
Bonjour,



Dim i As Integer

For i = 1 To Application.Workbooks.Count

MsgBox Application.Workbooks(i).Name

'...

Next i



ChRB
<hr size="2" width="100%">
Merci de cliquer sur "Réponse acceptée" si une réponse vous convient.
0
91arno78 Messages postés 8 Date d'inscription mardi 9 août 2005 Statut Membre Dernière intervention 10 août 2005
9 août 2005 à 11:58
Bon ben je vais essayer de ce pas!!!

Merci beaucoup fcampagne
0
91arno78 Messages postés 8 Date d'inscription mardi 9 août 2005 Statut Membre Dernière intervention 10 août 2005
9 août 2005 à 12:09
Ben apparemment ca marche pas il me met une erreur de compilation....

comprends pas ca avait l'air logique.
0

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

Posez votre question
91arno78 Messages postés 8 Date d'inscription mardi 9 août 2005 Statut Membre Dernière intervention 10 août 2005
9 août 2005 à 12:13
Je comprends pas trop ta solution charles... je ne lui désigne pas les feuilles comment il va les reconnaitre?
0
Utilisateur anonyme
9 août 2005 à 12:30
Bonjour,



Pardon, j'avais mal compris ton pb.

Ceci serait mieux



Dim i As Integer

For i = 1 To Application.Workbooks.Count

If UCase(Left(Application.Workbooks(i).Name, 8)) = UCase("Classeur") Then

MsgBox Application.Workbooks(i).Name

End If

Next i



ChRB
<hr size="2" width="100%">
Merci de cliquer sur "Réponse acceptée" si une réponse vous convient.
0
91arno78 Messages postés 8 Date d'inscription mardi 9 août 2005 Statut Membre Dernière intervention 10 août 2005
9 août 2005 à 13:50
En fait j'ai d'autres feuilles excel d'ouvertes à coté de celles nommées "classeur"1 etc ca va poser problème?
0
aieeeuuuuu Messages postés 698 Date d'inscription jeudi 16 janvier 2003 Statut Membre Dernière intervention 20 mai 2011 3
9 août 2005 à 13:50
salut
t'as aussi cette méthode :

Public Sub test()


Dim feuille As Worksheet
Dim classeur As Workbook

Set classeur = ThisWorkbook

For Each feuille In classeur.Worksheets
MsgBox feuille.Name
Next
End Sub

avec cette methode tu as une boucle qui passe en revue toutes les feuilles de ton classeur
0
91arno78 Messages postés 8 Date d'inscription mardi 9 août 2005 Statut Membre Dernière intervention 10 août 2005
9 août 2005 à 14:29
Bon ben en fait ca ca marche mais fo remplacer "select" par "activate"

for i= 1 to n
Windows("classeur " & i & ".xls").select
next

Merci tout le monde pour votre aide
0
Rejoignez-nous