Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Macro, pour enregistrer sous format .xls

2 réponses
Avatar
Sully
Bonsoir à tous,
Avec l'aide de certaines personnes du site que je remercie de nouveau, j'ai
mis en place la macro ci-dessous, elle fonctionne très bien.
Je souhaiterais apporté une modification, qu'elqu'un peut t-il me dire ce
que je dois modifier dans la macro. j'ai essayer plusieurs choses mais je ne
suis arrivé.

Actuellement elle propose l'enregistement en reprenant le nom de mon mdèle
"modèle AB.xls" , l'incovénient, il n'enregistement pas immédiament au
format xls. je pense que " " le gène. dans la case en dessous de la
fenêtre enregister sous: je n'ai pas accés au format, xls, xlm, csv, ect ,
on me propose juste le format fichier
: type de fichier : tous les Fichier (* .*)

meri par avance pour votre aide.

Cette macro, qui est en modèle et me propose l'enregistement sous " avec un
mot de passe si le souhaite.

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
Cancel As Boolean)

Dim Mdp As String, fNm, msg As Integer
If SaveAsUI = False Then Exit Sub
Cancel = True
msg = MsgBox(" Voulez-vous sauvegarder avec mot de passe ? ", _
4, "Anatole BOYER te Demande !") 'vous avez compris ce bout de texte est
modifiable.
If msg <> 7 Then
Mdp = InputBox("D'entrez le mot de passe ", "Anatole Te Demande !")
If Mdp = "" Then 'mdp pour Mot de passe "" on pourrai mettre un mot
passe identique pour tous.

MsgBox "Vous n'avez Rien Saisi = Donc, Pas de Mot de passe": Exit Sub
End If
End If

fNm = Application.GetSaveAsFilename
If fNm = False Then
MsgBox "Pas de Nom Fichier Saisi = Pas d'enregistrement,donc
Annulation": Exit Sub
End If
If msg <> 7 Then
ActiveWorkbook.SaveAs Filename:=fNm, Password:=Mdp
Else
ActiveWorkbook.SaveAs fNm

End If
'Application.EnableEvents = True

End Sub

2 réponses

Avatar
Daniel.C
Bonsoir.
Pas sûr de comprendre ton problème... La méthode GetSaveAsFilename ne
sert qu'à récupérer le nom du fichier à sauvegarder. Le type "*.*"
permet d'afficher tous les fichiers du dossier en cours.
Tu peux utiliser :
fNm = Application.GetSaveAsFilename(fileFilter:="Fichiers Excel
(*.xls),*.xls")
pour n'afficher que les fichiers Excel.
Cordialement.
Daniel

Bonsoir à tous,
Avec l'aide de certaines personnes du site que je remercie de nouveau, j'ai
mis en place la macro ci-dessous, elle fonctionne très bien.
Je souhaiterais apporté une modification, qu'elqu'un peut t-il me dire ce
que je dois modifier dans la macro. j'ai essayer plusieurs choses mais je ne
suis arrivé.

Actuellement elle propose l'enregistement en reprenant le nom de mon mdèle
"modèle AB.xls" , l'incovénient, il n'enregistement pas immédiament au
format xls. je pense que " " le gène. dans la case en dessous de la fenêtre
enregister sous: je n'ai pas accés au format, xls, xlm, csv, ect , on me
propose juste le format fichier
: type de fichier : tous les Fichier (* .*)

meri par avance pour votre aide.

Cette macro, qui est en modèle et me propose l'enregistement sous " avec un
mot de passe si le souhaite.

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
Cancel As Boolean)

Dim Mdp As String, fNm, msg As Integer
If SaveAsUI = False Then Exit Sub
Cancel = True
msg = MsgBox(" Voulez-vous sauvegarder avec mot de passe ? ", _
4, "Anatole BOYER te Demande !") 'vous avez compris ce bout de texte est
modifiable.
If msg <> 7 Then
Mdp = InputBox("D'entrez le mot de passe ", "Anatole Te Demande !")
If Mdp = "" Then 'mdp pour Mot de passe "" on pourrai mettre un mot
passe identique pour tous.

MsgBox "Vous n'avez Rien Saisi = Donc, Pas de Mot de passe": Exit Sub
End If
End If

fNm = Application.GetSaveAsFilename
If fNm = False Then
MsgBox "Pas de Nom Fichier Saisi = Pas d'enregistrement,donc
Annulation": Exit Sub
End If
If msg <> 7 Then
ActiveWorkbook.SaveAs Filename:=fNm, Password:=Mdp
Else
ActiveWorkbook.SaveAs fNm

End If
'Application.EnableEvents = True

End Sub


Avatar
Sully
Bonsoir à tous
un grand merci à Daniel pour sa réponse. c'est ce je voulais . çà fonctionne
.
Bonne soirée.
Cordialement Sully.
"Daniel.C" a écrit dans le message de news:
%23t0$
Bonsoir.
Pas sûr de comprendre ton problème... La méthode GetSaveAsFilename ne sert
qu'à récupérer le nom du fichier à sauvegarder. Le type "*.*" permet
d'afficher tous les fichiers du dossier en cours.
Tu peux utiliser :
fNm = Application.GetSaveAsFilename(fileFilter:="Fichiers Excel
(*.xls),*.xls")
pour n'afficher que les fichiers Excel.
Cordialement.
Daniel

Bonsoir à tous,
Avec l'aide de certaines personnes du site que je remercie de nouveau,
j'ai mis en place la macro ci-dessous, elle fonctionne très bien.
Je souhaiterais apporté une modification, qu'elqu'un peut t-il me dire
ce que je dois modifier dans la macro. j'ai essayer plusieurs choses mais
je ne suis arrivé.

Actuellement elle propose l'enregistement en reprenant le nom de mon
mdèle "modèle AB.xls" , l'incovénient, il n'enregistement pas
immédiament au format xls. je pense que " " le gène. dans la case en
dessous de la fenêtre enregister sous: je n'ai pas accés au format, xls,
xlm, csv, ect , on me propose juste le format fichier
: type de fichier : tous les Fichier (* .*)

meri par avance pour votre aide.

Cette macro, qui est en modèle et me propose l'enregistement sous " avec
un mot de passe si le souhaite.

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
Cancel As Boolean)

Dim Mdp As String, fNm, msg As Integer
If SaveAsUI = False Then Exit Sub
Cancel = True
msg = MsgBox(" Voulez-vous sauvegarder avec mot de passe ? ", _
4, "Anatole BOYER te Demande !") 'vous avez compris ce bout de texte
est modifiable.
If msg <> 7 Then
Mdp = InputBox("D'entrez le mot de passe ", "Anatole Te Demande !")
If Mdp = "" Then 'mdp pour Mot de passe "" on pourrai mettre un
mot passe identique pour tous.

MsgBox "Vous n'avez Rien Saisi = Donc, Pas de Mot de passe": Exit
Sub
End If
End If

fNm = Application.GetSaveAsFilename
If fNm = False Then
MsgBox "Pas de Nom Fichier Saisi = Pas d'enregistrement,donc
Annulation": Exit Sub
End If
If msg <> 7 Then
ActiveWorkbook.SaveAs Filename:=fNm, Password:=Mdp
Else
ActiveWorkbook.SaveAs fNm

End If
'Application.EnableEvents = True

End Sub