@Dan
Sheets(1).Range("A" & Rows.Count).End(xlUp).Activate
Cette instruction sert à aller à la fin du fichier avant l'enregistrement.
Les fichiers sont très longs et en procédant ainsi, lors des éventuelles ouvertures par la suite, le fichier s'ouvre en étant déjà à la fin.
Il y a sûrement une manière plus élégante de le faire mais ça a le mérite de marcher
Je ne veux pas mettre le nom du fichier manuellement. J'aimerais que cela se fasse automatiquement.
@BrunoM45
Je ne peux pas utiliser ThisWorkbook.SaveAS "C:\Chemin\NomFichier.xlsx"
Je vous explique mon cas.
1. Je sors mon classeur "source" du logiciel comptable
2. Mon classeur source à plusieurs feuilles et j'ai besoin de garder que la première
3. Le code ci-dessous me permet de sortir que la première feuille et de définir son nom lors de l'enregistrement.
Si dans le classeur source le nom de de ma feuille est "John Doe", lorsque la boîte d'enregistrement du fichier va s'ouvrir, le nom du fichier est déjà prédéfini "John Doe.xlsx"
Je n'ai plus qu'à appuyer sur "Enregistrer"
bFileSaveAs = Application.Dialogs(xlDialogSaveAs).Show(ActiveWorkbook.Sheets(1).Name & ".xlsx")
If Not bFileSaveAs Then MsgBox "User cancelled", vbCritical
Ce que je souhaite faire : éviter que la boite de dialogue s'ouvre et de devoir cliquer sur "Enregistrer".
J'aimerais que le fichier s'enregistre sans ouverture.
J'espère que c'est clair.
Merci pour votre aide en tout cas.