Test Présence d'une feuille

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

Astyanax

XLDnaute Occasionnel
[Résolu] Test Présence d'une feuille

Re-bonjour, afin d'éviter de tenter de supprimer une feuille inexistante et obtenir dans ce cas un message d'erreur, j'aimerais trouver la syntaxe pour tester l'existence de cette feuille
Sheetexist ???
J'ai cherché dans l'aide mais je n'ai pas trouvé de solution.
Merci de me répondre
Astyanax
 
Dernière édition:
Re : Test Présence d'une feuille

bonjour Astyanax

si tu veux supprimer Feuil3 sans message une solution:

Code:
Application.DisplayAlerts = False
For n = 1 To Sheets.Count
 If Sheets(n).Name = "Feuil3" Then
   Sheets(n).Delete
 End If
Next
Application.DisplayAlerts = True

que la feuille existe ou non il 'y aura pas de message et si elle existe elle sear supprimée
 
Dernière édition:
Re : Test Présence d'une feuille

Bonjour Astyanax, pierrejean

Une fonction perso pour tester l'existance d'une feuille. Si vrai la feuille existe, si faux la feuille n'existe pas.

Code:
Function TestFeuil(Nom as String) As Boolean
Dim feuil As Object
On Error Resume Next
Set feuil = ActiveWorkbook.Sheets(Nom)
  If Err = 0 Then
     TestFeuil = True
  Else
     TestFeuil = False
  End If
End Function
Tu peux l'utiliser dans une feuille comme ceci, dans une cellule tape :

=TestFeuil("Feuil4") sans oublier les "
ou alors en A1 le Nom de la Feuille sans les " et en A2: = TestFeuil(A1)

Ou alors dans une procédure comme ceci :

Code:
Sub FeuilExist()
Dim Nom as String
Nom = InputBox("Test")
If Nom <> "" Then MsgBox TestFeuil(Nom)
End Sub

Pour supprimer la feuille directement si elle existe ( sans message d'alerte) :

Code:
Sub SupFeuil()
Dim Nom As String
Nom = InputBox("Test")
If Nom <> "" Then
  If TestFeuil(Nom) = True Then
     Application.DisplayAlerts = False
     Sheets(Nom).Delete
     Application.DisplayAlerts = True
  Else
     MsgBox "La feuille n'existe pas"
     Exit Sub
  End If
End If
End Sub


Bonne fin de journée
 
Dernière édition:
- 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

Discussions similaires

A
Réponses
3
Affichages
837
F
Réponses
72
Affichages
7 K
FloASF63
F
Retour