Test Présence d'une feuille

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:

pierrejean

XLDnaute Barbatruc
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:

bqtr

XLDnaute Accro
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:

Discussions similaires

Réponses
3
Affichages
515

Statistiques des forums

Discussions
312 329
Messages
2 087 323
Membres
103 516
dernier inscrit
René Rivoli Monin