Macro SaveCopyAs avec options...
infqm
-
infqm -
infqm -
Bonjour,
J'utilise une macro pour créer une copie du classeur :
Elle fonctionne bien mais :
1) le classeur source étant un .xlsm, la sauvegarde en .xls ne s'ouvre qu'avec un message d'alerte "Format différent de celui spécifié par l'extension... Voulez-vous continuer". Comment éviter ce message ? Dois-je utiliser une fonction "exporter" ?
2) si je tiens au .xls, c'est aussi parce que j'aimerai que ma sauvegarde soit dépourvue des boutons et macros du classeur d'origine. Comment faire en sorte que ma copie soit vierge des macros sources ?
3) Enfin j'aimerai ajouter une condition, pour que le fichier de sauvegarde ne soit créé que si la cellule C3 est renseignée, valeur qui rentre dans le nom du fichier sauvegarde (cf. macro plus haut). Est-ce possible ?
Merci à tous de votre aide car j'ai beau cherché sur le net, je galère...
infqm.
J'utilise une macro pour créer une copie du classeur :
Sub CommandButton1_Click() 'Sauvegarde de la visite
Dim nom As String
nom = "CR Visite " & "[" & Range("C3") & "] " & "[" & Format(Date, "dd-mm-yyyy") & "]" & ".xls"
ActiveWorkbook.SaveCopyAs ActiveWorkbook.Path & "\Compte-rendus visites\" & nom
rep = MsgBox("Le compte-rendu est maintenant sauvegardé dans le dossier 'Compte-rendus visites' sous le nom : " & nom, vbYes + vbInformation, "Sauvegarde de la visite")
End Sub
Elle fonctionne bien mais :
1) le classeur source étant un .xlsm, la sauvegarde en .xls ne s'ouvre qu'avec un message d'alerte "Format différent de celui spécifié par l'extension... Voulez-vous continuer". Comment éviter ce message ? Dois-je utiliser une fonction "exporter" ?
2) si je tiens au .xls, c'est aussi parce que j'aimerai que ma sauvegarde soit dépourvue des boutons et macros du classeur d'origine. Comment faire en sorte que ma copie soit vierge des macros sources ?
3) Enfin j'aimerai ajouter une condition, pour que le fichier de sauvegarde ne soit créé que si la cellule C3 est renseignée, valeur qui rentre dans le nom du fichier sauvegarde (cf. macro plus haut). Est-ce possible ?
Merci à tous de votre aide car j'ai beau cherché sur le net, je galère...
infqm.
| EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
A voir également:
- Macro SaveCopyAs avec options...
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Windows 11 afficher d'autres options - Guide
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Jitbit macro recorder - Télécharger - Confidentialité
- Accéder aux options de démarrage avancées de windows 10 - Guide
1 réponse
Bonjour,
1 - Peut être en utilisant un
https://docs.microsoft.com/fr-fr/office/vba/api/excel.application.displayalerts?redirectedfrom=MSDN
2 -
xls est le format Excel des versions antérieures à 2007. ce format prend en compte les macros.
Pour ne pas avoir les macros.. à la limite.. il faut le mettre en .xlsx
Nb: cela ne retirera pas les "boutons" ou autres composants présents sur les feuilles.
3 -
Un Simple IF suffirait non ?
<code basic>
if Range("C3").value <>"" then
' ici le code de sauvegarde
End If
1 - Peut être en utilisant un
Application.DisplayAlerts=false
https://docs.microsoft.com/fr-fr/office/vba/api/excel.application.displayalerts?redirectedfrom=MSDN
2 -
si je tiens au .xls, c'est aussi parce que j'aimerai que ma sauvegarde soit dépourvue des boutons et macros du classeur d'origine
xls est le format Excel des versions antérieures à 2007. ce format prend en compte les macros.
Pour ne pas avoir les macros.. à la limite.. il faut le mettre en .xlsx
Nb: cela ne retirera pas les "boutons" ou autres composants présents sur les feuilles.
3 -
j'aimerai ajouter une condition,
[...]
pour que e fichier de sauvegarde ne soit créé que si la cellule C3 est renseignée
Un Simple IF suffirait non ?
<code basic>
if Range("C3").value <>"" then
' ici le code de sauvegarde
End If
Le "IF" fonctionne bien mais dès que je protège ma feuille, j'ai une erreur 400 ^^
Pour faire disparaître les bouton de macros de la feuille sur le fichier de sauvegarde, tu as une idée ?