• Initiateur de la discussion Initiateur de la discussion Guytou
  • 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 !

G

Guytou

Guest
Bonjour,

je n' arrive pas à trouver la macro .... qui me permettrait dans un classeur d' appeler une 'feuille' et de faire en sorte que si cette feuille n'xiste pas.... qu' un message d' erreur m' avertisse que cette feuille n' existe pas et que si elle existe qu' elle me l' ouvre.

Merci d' avance
 
Bonjour Guitou, le Forum

Une méthode simple et rapide, détecter/gérer l'erreur sur Sheets('TheSheetName').Activate si le nom de feuille n'existe pas, plutôt que de boucler sur toutes les feuilles. (Fastidieux si tu as 100 feuilles et plus)

Exemple :

Option Explicit

Sub TheSheetsTestor()
Dim TheSheetName As String

TheSheetName = Application.InputBox(prompt:='Indiquez la feuille à chercher', _
                                    Title:='Cherche Feuille', Type:=1 + 2)
If TheSheetName = '' Then Exit Sub

On Error GoTo NotExisting
    Sheets(TheSheetName).Activate
Exit Sub

NotExisting:
   
If Err = 9 Then
        MsgBox 'La Feuille ' & TheSheetName & ' introuvable pas dans ce Classeur'
   
Else
        MsgBox 'Erreur non gérée : ' & Err.Number & ' ' & Err.Description
   
End If
End Sub


Bonne Journée
@+Thierry
 
Salut Guytou

une autre possibilé

Option Explicit

Sub NomFeuille()
Dim c As Worksheet
Dim rep As String

rep = InputBox('donnez le nom de la feuille à ouvrir')
For Each c In Worksheets
If UCase(c.Name) = UCase(rep) Then
c.Activate
Exit Sub
End If
Next
MsgBox 'la feuille ' & rep & ' n'existe pas dans ce classeur'

End Sub

colle ça dans un module et c ok
Bertrand
 
Re Guytou (sorry pour l'orthographe avant), bonjour Bertrand, le Forum

Donc c'est très bien Bertrand, tu donnes aussi la solution avec une Boucle sur Toutes les Feuilles, qui est en théorie la plus 'académique'.

Cependant, avec l'expérience, on notera que parfois savoir générer et gérer une erreur est bien plus rapide que de contrôler item par item.

Pour le reste, rien à dire, ton code est correct. Et très bien d'avoir songé à la sortie 'Exit Sub' dans la boucle une fois le 'Match' accompli... Ptet juste un Test sur 'rep' si vide en sortie de l'InputBox...

Bonne Journée
@+Thierry
 
- 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

Réponses
4
Affichages
552
  • Question Question
Microsoft 365 agrandir la liste
Réponses
21
Affichages
613
Réponses
3
Affichages
307
Réponses
15
Affichages
781
Retour