Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

La sauvegarde ce fait avec la macro

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

reinruof77

XLDnaute Occasionnel
bonjour a tous et toutes
via un userbox je sauvegarde une feuille exell mais la sauvegarde ce fait avec la macro je suis donc obliger de convertir cette feuille en pdf.
voici le code:

"Private Sub CommandButton1_Click()
TextBox1.MaxLength = 8
Dim chem As String
Dim nom As String
chem = ThisWorkbook.Path & "\" 'à adapter
[A8] = TextBox1
[C8] = TextBox2
[C10] = TextBox3
[C11] = TextBox4
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
nom = Range("A8").Value & ".xls"
ThisWorkbook.SaveCopyAs (chem & nom)
Unload Me
UserForm1.Show
End Sub"

Comment faire pour que l'orsque j'enregistre je n'est plus la macro dans la feuille enregistrer ou enregitrer directement en PDF.

je suis ouvert a toute sugestion .
merci de votre aide
 
Re : La sauvegarde ce fait avec la macro

Bonjour reinruof77, salut Staple 🙂

Pas besoin d'enregistrer en pdf.

1) Si l'on veut copier toutes les feuilles de calcul (je ne me suis pas préoccupé du cas où il y a des feuilles graphiques) :

Code:
Private Sub CommandButton1_Click()
Dim chem As String, nom As String, i As Integer
TextBox1.MaxLength = 8
[A8] = TextBox1: [C8] = TextBox2: [C10] = TextBox3: [C11] = TextBox4
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
chem = ThisWorkbook.Path & "\" 'à adapter
nom = Range("A8").Value & ".xls"
Application.SheetsInNewWorkbook = Worksheets.Count
Workbooks.Add
Application.SheetsInNewWorkbook = 3
For i = 1 To Worksheets.Count
  ThisWorkbook.Worksheets(i).Cells.Copy Worksheets(i).Cells 'copie toutes les feuilles de calcul
Next
On Error Resume Next 'si le fichier existe déjà
ActiveWorkbook.SaveAs chem & nom
ActiveWorkbook.Close False
Unload Me
UserForm1.Show
End Sub

2) Si l'on veut copier uniquement la feuille active :

Code:
Private Sub CommandButton1_Click()
Dim chem As String, nom As String, i As Integer
TextBox1.MaxLength = 8
[A8] = TextBox1: [C8] = TextBox2: [C10] = TextBox3: [C11] = TextBox4
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
chem = ThisWorkbook.Path & "\" 'à adapter
nom = Range("A8").Value & ".xls"
i = ActiveSheet.Index
Application.SheetsInNewWorkbook = 1 'facultatif
Workbooks.Add
Application.SheetsInNewWorkbook = 3 'facultatif
ThisWorkbook.Worksheets(i).Cells.Copy Cells 'copie la feuille active
On Error Resume Next 'si le fichier existe déjà
ActiveWorkbook.SaveAs chem & nom
ActiveWorkbook.Close False
Unload Me
UserForm1.Show
End Sub

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
792
Réponses
2
Affichages
589
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…