エクセルマクロで、CSVの保存先を指定するVBAコードをご紹介します。
このページのマクロコードは、コピペで使えます。
ぜひお試しください!
CSV出力時に保存先指定
以下のマクロを実行すると、CSVの保存先を指定します。
Sub 指定パスにCSV作成して保存()
Dim MyFolder As String
'CSV保存先のパス
MyFolder = "C:\テスト\"
'名前を付けて保存
ActiveWorkbook.SaveAs FileName:= _
MyFolder & "ファイル名を入力してね" & ".csv", FileFormat:=xlCSV
End Sub
CSVを作成し、指定のフォルダパスに自動保存します。
CSV出力時に保存先指定(同名ファイルは処理分岐)
以下のマクロを実行すると、すでに同名ファイルがある場合は処理を分岐します。
Sub 指定場所にCSV作成保存()
Dim MyFolder As String
Dim MyName As String
Dim Done As Variant
'CSV保存先のパス
MyFolder = "C:\テスト"
'ファイル名
MyName = "ファイル名を入力してね" & ".csv"
'同名ファイルがあるか確認
If Dir(MyFolder & "\" & MyName) <> "" Then
Done = Application.GetSaveAsFilename(MyFolder & "\" & MyName, "CSVファイル(*.csv),*.csv")
If Done = False Then
Exit Sub
Else
'保存
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs FileName:= _
Done, FileFormat:=xlCSV
Application.DisplayAlerts = True
End If
Else
'名前を付けて保存
ActiveWorkbook.SaveAs FileName:= _
MyFolder & "\" & MyName, FileFormat:=xlCSV
End If
End Sub
同名ファイルが存在しない場合
CSVを作成し、指定のフォルダパスに自動保存します。
すでに同名ファイルが存在する場合
名前を付けて保存ダイアログを表示します。
・「キャンセル」をクリックした場合
⇒CSVファイルを作成せず、マクロを終了します。
・「保存」をクリックした場合
⇒すでに存在する同名ファイルに上書き保存します。
・ファイル名を変更した場合
⇒変更したファイル名でCSVファイルを作成します。
この記事がお役に立ちますと幸いです。
【エクセルマクロ】CSV処理を自動化:超便利10選
...
「プログラマーの本気がExcelを覚醒させる 超絶ExcelVBA」
ExcelVBAでワンランクアップできる書籍
具体的で応用が利く技をたくさん掲載
リンク