1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
|
Private Sub cmdExport_Click()
Dim fileName As String
Dim currWorkbookName As String
Dim exportWorkbookName As String
'enleve la mise a jour de l'ecran et le calcul auto
On Error GoTo cmdExport_Click_Error
Application.ScreenUpdating = False
'recupere le nom de fichier
fileName = InputBox("Veuillez choisir un nom pour votre fichier SVP.", "Nom de fichier à exporter")
'verifie si le nom de fichier est renseigné
If fileName = "" Then
MsgBox "Veuillez saisir un nom de fichier SVP", vbInformation
Exit Sub
End If
'verifie si l'extension du fichier a été saisie
If Right(fileName, 4) <> ".xls" Then
fileName = fileName & ".xls"
End If
If Not FileExist(fileName) Then
MsgBox "Le fichier " & fileName & " n'existe pas !", vbInformation
End If
'recupere le nom du classeur courant
currWorkbookName = ActiveWorkbook.Name
Workbooks.Open fileName
exportWorkbookName = ActiveWorkbook.Name
'envoie les feuilles vers le nouveau fichier
For Each mySheet In Workbooks(currWorkbookName).Sheets
If mySheet.Visible = False Then
Workbooks(currWorkbookName).Sheets(mySheet.Name).Copy after:=Workbooks(exportWorkbookName).Sheets(Workbooks(exportWorkbookName).Sheets.Count)
End If
Next mySheet
Workbooks(currWorkbookName).Sheets("Analyse").Copy after:=Workbooks(exportWorkbookName).Sheets(Workbooks(exportWorkbookName).Sheets.Count)
Workbooks(currWorkbookName).Sheets("Analyse charge_capa").Copy after:=Workbooks(exportWorkbookName).Sheets(Workbooks(exportWorkbookName).Sheets.Count)
'sauvegarde
Workbooks(exportWorkbookName).Close SaveChanges:=True
Application.ScreenUpdating = True
MsgBox "Export terminé", vbInformation
On Error GoTo 0
Exit Sub
cmdExport_Click_Error:
Application.ScreenUpdating = True
MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure cmdExport_Click of Document VBA Feuil3"
End Sub |
Partager