XL 2016 vérifier si feuille existe

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

KTM

XLDnaute Impliqué
Bonsoir chers tous.
Je voudrais depuis mon fichier actif "Classeur1" exécuter ma macro "M" sur la feuille "Liste" d'un autre fichier "Classeur2".
Mais avant je voudrais vérifier si la feuille "Liste" existe dans "Classeur2".
Merci
 
Salut, vite fait, à tester/adapter à ton contexte
VB:
Option Explicit

Private Function FeuilleExiste(sNomFeuille As String, Optional Wkb As Workbook = Nothing) As Boolean
Dim Ws As Worksheet
    FeuilleExiste = False
    If Wkb Is Nothing Then
        Set Wkb = ThisWorkbook
    End If
    For Each Ws In Wkb.Worksheets
        If Ws.Name = sNomFeuille Then
            FeuilleExiste = True
            Set Wkb = Nothing
            Exit For
        End If
    Next Ws
    Set Wkb = Nothing
End Function
 
Dernière édition:
Salut, vite fait, à tester/adapter à ton contexte
VB:
Option Explicit

Function FeuilleExiste(sNomFeuille As String, Optional Wkb As Workbook = Nothing) As Boolean
Dim Ws As Worksheet
    FeuilleExiste = False
    If Wkb Is Nothing Then
        Set Wkb = ThisWorkbook
    End If
    For Each Ws In Wkb.Worksheets
        If Ws.Name = sNomFeuille Then
            FeuilleExiste = True
            Set Wkb = Nothing
            Exit For
        End If
    Next Ws
    Set Wkb = Nothing
End Function
Merci.
Ce code fonctionne sur le classeur actif mais dans mon cas la feuille à vérifier est sur un autre classeur.
 
Re, et ceci est là pour quoi ?
Code:
Optional Wkb As Workbook = Nothing

Arrête de fonctionner par psittacisme, et de recopier un code qui en plus a été modifié !

VB:
Sub Tst()
Dim NomFeuille As String
Dim Wkb As Workbook

    On Error Resume Next
    NomFeuille = "Liste"
    Set Wkb = Workbooks("Classeur2.xlsm")

    If FeuilleExiste(NomFeuille, Wkb) Then
        MsgBox NomFeuille & " existe"
    Else
        MsgBox NomFeuille & " n'existe pas"
    End If

    Set Wkb = Nothing
End Sub
 
Dernière édition:
Re, et ceci est là pour quoi ?
Code:
Optional Wkb As Workbook = Nothing

Arrête de fonctionner par psittacisme, et de recopier un code qui en plus a été modifié !

VB:
Sub Tst()
Dim NomFeuille As String
Dim Wkb As Workbook

    On Error Resume Next
    NomFeuille = "Liste"
    Set Wkb = Workbooks("Classeur2.xlsm")

    If FeuilleExiste(NomFeuille, Wkb) Then
        MsgBox NomFeuille & " existe"
    Else
        MsgBox NomFeuille & " n'existe pas"
    End If

    Set Wkb = Nothing
End Sub
Merci infiniment !!
 
- 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

Réponses
7
Affichages
301
Réponses
37
Affichages
533
Retour