Bonsoir Fred, José, Robert, le Forum.
Désolé Robert, si je peux me permettre... je ne suis pas tout à fait d'accord avec toi...
Déclarer les variables, ça oui, c'est tout à fait recommandé ! Par contre, déclarer ici la variable
F en tant que
string provoquera un beau plantage si l'utilisateur choisit le bouton "Annuler" dans la boîte de dialogue affichée par Application.GetSaveAsFilename() car la valeur retournée dans ce cas est effectivement
False.
Peut-être que le code ci-dessous permettra à Fred de résoudre son problème :
Dim F As Variant
Workbooks("Nomfichier").Activate
ChDir "L:"
F = Application.GetSaveAsFilename(InitialFileName:="Nommerlefichier.xls", FileFilter:="Excel Workbook (*.xls),*.xls")
If F = False Then Exit Sub
ActiveWorkbook.SaveAs Filename:=F
'
'Copie de l'en-tête du tableau
Workbooks("monclasseur.xls").Sheets(1).Rows("1:8").Copy Destination:=ActiveWorkbook.Sheets(1).Rows("1:8")
Application.CutCopyMode = False
Il n'est pas toujours nécessaire de procéder à des "select" pour pouvoir copier des objets range.
Attention : l'expression "Sheets(1)" sera peut-être à adapter ici...
Cordialement.
Didier_mDF