Aide pour améliorer mon code

teamtat

XLDnaute Occasionnel
Bonjour,
Mon code me permet de sauvegarder mon classeur dans un dossier sous le nom que je souhaite. Mon classeur contient plusieurs feuille
J'aimerai pouvoir sauvegarder seulement 1 ou 2 feuilles
et si possible en PDF
Merci


Code:
 Private Sub CommandButton1_Click()

On Error Resume Next
MkDir "C:\Documents and Settings\peyret\Mes documents\camille\Affaire n° " & Range("G4").Value
On Error GoTo 0
  
monfichier = "C:\Documents and Settings\peyret\Mes documents\camille\Affaire n° " & Range("G4").Value & "\" & "Appareil n° " & Range("C4").Value
   
   
   
If Dir(monfichier & ".xls") <> "" Then
jour = Format(Now, "dd-mm-yy hh mm ss")
monfichier = monfichier & " " & jour
End If
monfichier = monfichier & ".xls"
   
ThisWorkbook.SaveCopyAs monfichier
 
MsgBox "Sauvegarde terminée."


End Sub
 

teamtat

XLDnaute Occasionnel
Re : Aide pour améliorer mon code

J'ai essayé avec ce code mais il me met erreur d'execution '9' :
L'indice n'appartient pas a la selection

Sheets("feuil12").CopyActiveWorkbook.SaveCopyAs Filename:=monfichier (cette ligne qui ne va pas)

Code:
 Private Sub CommandButton1_Click()

Dim wk As Workbook
Dim ws As Worksheet

On Error Resume Next
MkDir "C:\Documents and Settings\peyret\Mes documents\camille\Affaire n° " & Range("G4").Value
On Error GoTo 0
  
monfichier = "C:\Documents and Settings\peyret\Mes documents\camille\Affaire n° " & Range("G4").Value & "\" & "Appareil n° " & Range("C4").Value
     
If Dir(monfichier & ".xls") <> "" Then
jour = Format(Now, "dd-mm-yy hh mm ss")
monfichier = monfichier & " " & jour
End If
monfichier = monfichier & ".xls"
   
Sheets("feuil12").CopyActiveWorkbook.SaveCopyAs Filename:=monfichier

MsgBox "Sauvegarde terminée."

End Sub
 

Discussions similaires

Statistiques des forums

Discussions
311 725
Messages
2 081 947
Membres
101 849
dernier inscrit
florentMIG