Bonjour,
J'ai 2 fichiers excel dont l'un comporte des macros. J'ai pour habitude d'ouvrir les 2 en simultanée, de façon à pouvoir exécuter les macros sur l'un comme sur l'autre. Mais la macro suivante ne s'exécute pas sur le 2ème fichier :
Sub CreationFichier()
Dim n&, chemin$, w As Worksheet, t$, Wb As Workbook
Application.ScreenUpdating = False
Application.DisplayAlerts = False 'si un fichier existe déjà
n = Application.SheetsInNewWorkbook 'nombre de feuilles des nouveaux classeurs
Application.SheetsInNewWorkbook = 1
chemin = ThisWorkbook.Path & "\" 'chemin d'accès à adapter
For Each w In Worksheets
t = Mid(w.[C3].Formula, 2)
On Error Resume Next
t = Range(t).Address
If Err = 0 Then
Set Wb = Workbooks.Add 'nouveau document
w.Cells.Copy Wb.Sheets(1).Cells 'copie de la feuille
Wb.Sheets(1).UsedRange = Wb.Sheets(1).UsedRange.Value 'supprime les formules (facultatif)
Wb.Sheets(1).Name = w.Name 'renomme la feuille du nouveau document
Wb.SaveAs chemin & Epure(w.Name) 'crée le fichier sur le disque dur
Wb.Close
End If
Next
je joins le fichier.
Ma 2ème requête : je voudrais que les macros apparaissent sur le 2ème fichier sans que j'ai besoin d'ouvrir le 1er
Merci d'avance pour votre aide
J'ai 2 fichiers excel dont l'un comporte des macros. J'ai pour habitude d'ouvrir les 2 en simultanée, de façon à pouvoir exécuter les macros sur l'un comme sur l'autre. Mais la macro suivante ne s'exécute pas sur le 2ème fichier :
Sub CreationFichier()
Dim n&, chemin$, w As Worksheet, t$, Wb As Workbook
Application.ScreenUpdating = False
Application.DisplayAlerts = False 'si un fichier existe déjà
n = Application.SheetsInNewWorkbook 'nombre de feuilles des nouveaux classeurs
Application.SheetsInNewWorkbook = 1
chemin = ThisWorkbook.Path & "\" 'chemin d'accès à adapter
For Each w In Worksheets
t = Mid(w.[C3].Formula, 2)
On Error Resume Next
t = Range(t).Address
If Err = 0 Then
Set Wb = Workbooks.Add 'nouveau document
w.Cells.Copy Wb.Sheets(1).Cells 'copie de la feuille
Wb.Sheets(1).UsedRange = Wb.Sheets(1).UsedRange.Value 'supprime les formules (facultatif)
Wb.Sheets(1).Name = w.Name 'renomme la feuille du nouveau document
Wb.SaveAs chemin & Epure(w.Name) 'crée le fichier sur le disque dur
Wb.Close
End If
Next
je joins le fichier.
Ma 2ème requête : je voudrais que les macros apparaissent sur le 2ème fichier sans que j'ai besoin d'ouvrir le 1er
Merci d'avance pour votre aide