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.
Je suis preneuse de toute proposition.
En vous remerciant par avance.
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.