syntaxe si la feuille n'exite pas

  • Initiateur de la discussion Initiateur de la discussion celtic
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

celtic

Guest
BOnjourrrr A TOUSSSSSS !!!

voila je fais une boucle FOR et je teste toutes les feuilles d'un classeur exemple :

For t=0 to 52
....blabla
sheets(t).activate
....blabla
next t

mais komen faire si une feuille n'existe pas....?? je voudrais juste ke la boucle saute cette page c'est koi la syntaxe ???


autre kestion, je fais une recherche du chiffre 0000 mais a chaque fois il me prend 0 et non 0000 komen faire ????


merci encore et encore c'est ke le debut ... d'accord d'accord...tutut
 
Bonjour Celtic

Pour la première question :

soit tu rassembles les feuilles que tu ne veux pas voir passer dans la boucle en début des onglets et tu démarres la boucle à la feuille 3 par exemple avec le code :

For t = 3 to 52

sheets(t).select

next t

soit tu mets une condition :

Sub Macro1()
Dim t As Byte
For t = 1 To 4
If Sheets(t).Name <> "tata" Then
Sheets(t).Select
End If
Next t

End Sub

Cordialement

CbernardT
 
merci CbernardT, mais je me suis mal expliqué...


en fait g des feuilles de 1 à 52, le problème est que lorsque je fait tourner ma boucle, si dans un classeur il n'existe pas la feuille par exemple 15 et bien le programme bug...

Le sheet.name n'intervient pas, du moins j'aimerais bien.

En gros le code devrait faire:

si la feuille(t) n'existe pas alors passe a la (t+1) (syntaxe ???)

j'espere avoir été clair...(c'est dur pour un débutant de se faire comprendre)

merci pour ta réponse...
 
bonjour celtic, Bernard, Yeahou


si sheets(t) n'existe pas alors qu'il existe t+1, t-1 etc

dans la boucle:

on error resume next
sheets(t).activate
on error goto 0

A bientôt pour de nouvelles aventures...

Michel
 
Re Bonjour Celtic, Cbernardt, Michel_M, le forum

Michel, ce cas est impossible, les index se décalent en cas de suppression ou de déplacement d'une feuille et vont toujours de 1 à sheets.count. L'index se rapporte obligatoirement à la position de la feuille dans le classeur. C'est pour cela que j'ai précisé "comme tu passes par l'index".

Cordialement, A+
 
Re Bonjour

Je suis désolé de te contredire de nouveau, Michel, mais c'est toi qui avait raison. Une feuille masquée garde son index mais ne peut être activée, ta proposition prend tout son sens pour gérer ce cas et est donc importante pour un code polyvalent. Désolé d'avoir été lent de réflexion sur ce coup là.

Bien cordialement, A+
 
Re RE Yeahou

Très sincèrement, je n'avais pas pensé à la feuille masquée ! et il est vrai que le test sheets(X) ne marche pas avec un index X car le décalage se produit comme tu l'as expliqué; cet aprèm j'étais encore sous l'influence d'un code où je testais le NOM worksheets("toto") de la feuille où cela fonctionne...

Amicalement

Michel
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour