Macro & Enregistrement

Résolu
Lentz -  
 Lentzouille -
Bonjour,

Je cherche a faire une macro qui me permettrai d'avoir le 'pop-up' de "Enregistrer sous" après a mwa de décider le nom de l'enregistrement ainsi que l'emplacement,

Cordialement,


A voir également:

7 réponses

cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 
Bonjour,

Un code de Mytå, pour Excel 2007 :

Sub Utilisation_FileDialog_Sauvegarde()
Dim objSaveBox As FileDialog

'Définit la fenêtre "Enregistrer sous"
Set objSaveBox = Application.FileDialog(msoFileDialogSaveAs)

With objSaveBox
'Définit un nom par défaut dans le champ "Nom de fichier".
.InitialFileName = "Nom fichier.xlsm"

'Définit le type de fichier par défaut:
.FilterIndex = 2 'Fichier xlsm

'Affiche la boîte de dialogue
.Show
'Enregistre
.Execute
End With

End Sub


Pour 2003, remplacer le 2 par 1, pour le FilterIndex

Bonne journée
1
Lentz
 
Jte remercie c'est nickel tout ça
0
Lentzouille
 
Juste une autre question

Comment je fais après dans ma macro pour dire que (par exemple)

Windows("Mars.xls").Select

Comment changer ce mars.xls en fonction du nom d'enregistrement que je veux faire ?

Merci !
0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 
Bonjour,

Comme tu travailles sur le classeur actif, en fin de code, tu peux récupérer le nom du fichier ainsi :

Fich = ActiveWorkbook.Name
0
Lentzouille
 
Non justement je travaille pas sur le fichier actif,

J'ouvre une nouvelle page

Puis je fais intervenir la macro du enregistrer sous

et apres je fais du C/C entre les nouvelles page
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 
Re-,

Juste avant le .Execute, tu peux récupérer le nom que tu as donné comme ceci :

 If .SelectedItems.Count > 0 Then
 Fich = Right(.SelectedItems(1), Len(.SelectedItems(1)) - InStrRev(.SelectedItems(1), "\"))
End If


Bon courage
0
Lentzouille
 
ça ne fait rien

mais ce que je souhaite c'est pour la suite de la macro que quand je fais

Windows("nom du fichier.xls").Activate

le nom du fichier soit remplacé par le nom auquel je viens d'enregistrer
0
Lentzouille
 
PS: je suis sous 2003
0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 
Re-,

Tu as récupéré par ce code le nom du fichier (Fich)

Windows(Fich).Activate


devrait le faire
0
Lentzouille
 
Merci nickel :)

Dernière chose :)

On va dire que Fich c'est le nouveau fichier

et pour l'ancien comment je peux le remplacer ?

Car là j'ai

Windows("Février.xls").Activate

ça m'évitera de changé ça tous les mois pour qu'il soit entièrement automatisé :)
0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 
Re-,

Il te suffit de déclarer le fichier actif en variable

Un code tel que :

Dim ThWbk As Workbook
Set ThWbk = ThisWorkbook
ThWbk.Activate


Devrait le faire.

Bon courage
0
Lentzouille
 
Ok tout est nickel !!

Je te remercie ! tu m'avance bcp !
0