Excel Macro - Export fiche au format csv et de les parcourir pour enregistrer répertoire
J'ai réussi a obtenu une macro de travail qui fait ce que j'ai besoin de faire, mais je voudrais faire mieux, et ne le peuvent pas.
-- Ce bit fonctionne --
En cliquant sur un bouton dans excel, l'utilisateur exporte une fiche spécifique pour un fichier csv avec une dynamique de nom de fichier et l'enregistre au format csv dans un pré-déterminé répertoire.
-- Peut-il faire cela à la place --
Au lieu d'économiser pour un répertoire prédéterminé, puis-je avoir la fenêtre de navigation montrer qu'ils puissent choisir un répertoire pour enregistrer? Je ne peux pas comprendre comment le faire.
Voici ma macro:
Sub Export()
Dim MyPath As String
Dim MyFileName As String
MyPath = "C:\importtest"
MyFileName = "MR_Update_" & Sheets("Monthly Review").Range("D3").Value & "_" & Format(Date, "ddmmyyyy")
If Not Right(MyPath, 1) = "\" Then MyPath = MyPath & "\"
If Not Right(MyFileName, 4) = ".csv" Then MyFileName = MyFileName & ".csv"
Sheets("Export Data").Copy
With ActiveWorkbook
.SaveAs Filename:= _
MyPath & MyFileName, _
FileFormat:=xlCSV, _
CreateBackup:=False
.Close False
End With
End Sub
- Démarrez la lecture de Application.Propriété FileDialog (Excel) et il devrait vous aider.
Vous devez vous connecter pour publier un commentaire.
Comme Patrick l'a suggéré, vous êtes à la recherche pour le
.FileDialog
de la propriété.Pour la mettre en œuvre, essayez ceci:
ConflictResolution:=xlLocalSessionChanges
argument de laSaveAs
méthode.Excel dispose d'une fonction intégrée de FileSave Dialogue. Il est appelé
.GetSaveAsFilename
. L'utiliser.Syntaxe
expression.GetSaveAsFilename(InitialFilename, FileFilter, FilterIndex, Titre, ButtonText)
Utilisation
Essayer Cette......
Voici un script que j'ai utilisé dernièrement que j'aime beaucoup. Pensé que je laisserais ici: