Enregistrer une feuille avec choix repertoire VBA

NoMercy007

XLDnaute Nouveau
Bonsoir à tous

Je désire sauvegarder la feuille DATA de mon projet, en forçant le nom "Export" et en donnant le choix du répertoire.
Voici mon code, où je rencontre une erreur que je n'arrive pas à corriger.

Merci de votre aide.

Dim Plage As Object, oL As Object, oC As Object, Tmp As String, Sep$
Dim Repertoire As FileDialog
'-- Choix du répertoire de sauvegarde
Set Repertoire = Application.FileDialog(msoFileDialogFolderPicker)
Repertoire.Show
'-- Sauvegarde de toutes les fiches saisies
Worksheets("DATA").Select
Sep = ";"
Set Plage = ActiveSheet.Range("A1:AB" & ActiveSheet.Range("A65000").End(3).Row)
Open "Export.csv" For Output As #1
For Each oL In Plage.Rows
Tmp = ""
For Each oC In oL.Cells
Tmp = Tmp & CStr(oC.Text) & Sep
Next
Print #1, Tmp
Next
Close
MsgBox "L'exportation du fichier 'Export.csv' est terminée", vbInformation, "Exportation"
 

Staple1600

XLDnaute Barbatruc
Re : Enregistrer une feuille avec choix repertoire VBA

Bonsoir à tous

NoMercy007
Sans doute peu de réponses, car la réponse est déjà dans les archives du forum...:rolleyes:
Néanmoins comme il s'agit d'une question de vie ou de mort, voici ma proposition.
(test OK sur XL 2013)
Code:
Sub ExportCSV()
Dim nFic As Variant
nFic = _
Application.GetSaveAsFilename(fileFilter:="Fichier CSV (*.csv), *.csv")
If nFic <> False Then
Sheets("Data").Copy
With ActiveWorkbook
    .SaveAs Filename:= _
        nFic, _
        FileFormat:=xlCSV, _
        CreateBackup:=False, local:=True
    .Close False
End With
End If
End Sub
 

NoMercy007

XLDnaute Nouveau
Re : Enregistrer une feuille avec choix repertoire VBA

Super, merci Staple

Très beau code, que je ne comprends pas du tout !!!!
Et là j'ai beaucoup de mal à l'adapter, car je voudrais un nom bloqué "EXPORT" et uniquement les colonnes/lignes de A1:AB. :eek::eek::eek:

Ah je ne suis pas mort, mais souffrant !!!
 

Staple1600

XLDnaute Barbatruc
Re : Enregistrer une feuille avec choix repertoire VBA

Re

NoMercy007
A ce que je vois souffrant au point de ne pas pouvoir chercher un chouia par toi-même ;)
Code:
Sub ExportCSVvII()
Dim nFic As Variant
nFic = _
Application.GetSaveAsFilename(InitialFileName:="Export.csv", fileFilter:="Fichier CSV (*.csv), *.csv")
If nFic <> False Then
Sheets("Data").Copy
With ActiveWorkbook
.Sheets(1).Columns(29).Resize(, Columns.Count - 28).Clear
    .SaveAs Filename:= _
        nFic, _
        FileFormat:=xlCSV, _
        CreateBackup:=False, local:=True
    .Close False
End With
End If
End Sub
 

Discussions similaires

Réponses
4
Affichages
1 K

Statistiques des forums

Discussions
312 198
Messages
2 086 107
Membres
103 120
dernier inscrit
83400ren