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
| '---------------------------------------------------------------------------------------
' Description : Exporte un fichier Excel vers CSV à partir d'Access
' Utilisation :
' strRepertoireSave : répertoire de destination du fichier CSV
' strFichierExcel : fichier Excel
' strFeuilleOrigine : Nom de la feuille du classeur
' strFichierCSV : Nom du fichier CSV
'---------------------------------------------------------------------------------------
'
Sub ExportFeuille_test(strRepertoireSave As String, strFichierExcel As String, strFeuilleOrigine As Variant, strFichierCSV As String)
Dim i As Integer
Dim appXl As Excel.Application
Set appXl = CreateObject("Excel.Application")
'Pour ne pas avoir d'avertissement si le fichier est déjà créé
appXl.DisplayAlerts = False
'Affiche le fichier Excel à l'écran pour vérif visuelle
appXl.Visible = True
appXl.AskToUpdateLinks = False
appXl.Workbooks.Open Filename:=strFichierExcel
appXl.Sheets(strFeuilleOrigine).Select
Debug.Print "Exportation de la feuille " & strFichierCSV & " du fichier " & strFichierExcel & " dans le fichier " & strRepertoireSave & strFichierCSV & ".xls"
'Si la dernière colonne est plus loin que Z
'Toujours inférieure à AZ
'strPlage gérée par une requête SQL qui va chercher la configuration dans une table définie manuellement.
strPlage = "3" 'Pour l'exemple
Debug.Print "Plage : A:" & strPlage
appXl.Sheets(strFeuilleOrigine).Columns("A:" & strPlage).Select
appXl.Application.CutCopyMode = xlCopy
appXl.Selection.Copy
appXl.ActiveWindow.Close
appXl.Workbooks.add
appXl.ActiveSheet.Paste
appXl.ActiveSheet.name = strFichierCSV
appXl.ActiveWorkbook.SaveAs Filename:= _
strRepertoireSave & strFichierCSV & ".xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
appXl.ActiveWindow.Close
appXl.Quit
Set appXl = Nothing
Debug.Print "Exportation OK"
End Sub |
Partager