XL 2016 Condition en fonction du nom du fichier

Crystel78

XLDnaute Nouveau
Bonjour,
Je cherche à programmer une condition en fonction d'un nom de fichier.
J'ai établi mon code de deux manières, mais aucune des deux ne fonctionnent.

L'idée est que je crée une boucle sur deux fichiers présents dans un dossier (Fichier1 et Fichier2), et crée un onglet pour chaque fichier dans le classeur de ma macro.
Ensuite en fonction du nom du fichier d'origine je vais mettre une condition If.

Le problème est que la macro s'arrête sur la ligne de la condition If en renvoyant une erreur.

VB:
Dim Ws As Worksheet
Dim monFichier As String
Dim wb As Workbook
Dim chemin As String
Set wb = Workbooks(ThisWorkbook.Name)
Dim sh As Worksheet
chemin = ThisWorkbook.Path & "\mon_dossier\"

monFichier = Dir(chemin & "*.xls", vbNormal)

Do While monFichier <> ""
    Nb = Nb + 1
        onglet = monFichier
        wb.Sheets.Add(After:=Worksheets(Worksheets.Count)).Name = onglet
            nom = ThisWorkbook.Path & "\mon_dossier\" & monFichier
            Workbooks.Open (nom)                                            ' ouvre fichier
            
            If Ws.Name <> "Fichier1.xlsm" Then
            
                 'code         
                
            Else
                
                'code
            End If
            
        monFichier = Dir
Loop



Sheets("Fichier1.xlsm").Select
ActiveWindow.SelectedSheets.Delete
Sheets("Fichier2.xls").Select
ActiveWindow.SelectedSheets.Delete

End Sub


Je suis preneuse de toute proposition.

En vous remerciant par avance.
 

Crystel78

XLDnaute Nouveau
Bonjour

Il faudrait absolument un exemple. Sans données personnelles bien évidemment

Cordialement
Bonjour et merci pour votre réponse,

Pour tester le code, placez les fichiers : Fichier1 et Fichier2 dans un dossier enfant de Classeur1, intitulé : "mon_dossier".

Bien à vous,
 

Pièces jointes

  • Classeur1.xlsm
    20.5 KB · Affichages: 7
  • Fichier1.xlsm
    15 KB · Affichages: 3
  • Fichier2.xlsx
    15 KB · Affichages: 3

juvaxe

XLDnaute Occasionnel
Re Bonsoir

En regardant un peu les "fils" du site, je viens de voir un sujet, paru hier, qui pourrait faire suite voir offrir une nouvelle solution à la question que tu as évoquée.

Le titre

"Copier onglet vers autre classeur via macro"

Bonne réception
 

Discussions similaires

  • Question
Microsoft 365 Code VBA
Réponses
10
Affichages
748
Réponses
2
Affichages
384

Statistiques des forums

Discussions
315 090
Messages
2 116 107
Membres
112 661
dernier inscrit
ceucri