Q&A
解決済み

【Excel】VBAを利用したCSVのインポートとエクスポートについて💦

Yurane
Yuraneさん
レギュラー

公坊さんのコメント
ベストアンサー
ベストアンサー
公坊
公坊さん
Gマスター

medal ベストアンサー獲得数 260 件

わたしの検索が勘違いでなければ、Bingからの回答です?

エクスポート
Private Sub CommandButton1_Click()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1") ' 対象のシート名を設定
Dim lastRow As Long
lastRow = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row ' B列で最後の行を取得

' A2セルからB列の最後のデータまでを選択
Dim rng As Range
Set rng = ws.Range("A2:B" & lastRow)

' CSVファイルとして保存
Dim filePath As String
filePath = "指定したフォルダのパス" ' 保存するフォルダのパスを設定
rng.Copy

Dim newWb As Workbook
Set newWb = Workbooks.Add
With newWb
.Sheets(1).Cells(1, 1).PasteSpecial Paste:=xlPasteValues
.SaveAs Filename:=filePath, FileFormat:=xlCSV
.Close False
End With
End Sub

インポート
Private Sub CommandButton2_Click()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1") ' 対象のシート名を設定

' ファイル選択ダイアログを表示
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
.Title = "CSVファイルを選択してください"
.Filters.Add "CSV", "*.csv", 1
If .Show = -1 Then
' CSVファイルを選択し、A2セルからデータを入力
Dim selectedFile As String
selectedFile = .SelectedItems(1)
With ws.QueryTables.Add(Connection:="TEXT;" & selectedFile, Destination:=ws.Range("A2"))
.TextFileParseType = xlDelimited
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = True
.TextFilePlatform = xlWindows
.Refresh
End With
End If
End With
End Sub

以下のリンクを参参照してください。
【Excel VBA入門】基本的なCSVファイルの読み込みと書き出し方法
https://valmore.work/vba-read-csv/

マクロ(Excel VBA)で CSV ファイルを開いてシートの中に取り込む方法
https://my-tax-nology.com/import-csv-data-to-excel-by-using-excel-vba

【Excel】VBAを利用したCSVのインポートとエクスポートについて
https://bing.com/search?q=Excel VBA CSV データ エクスポート インポート 方法
ベストアンサー この回答はベストアンサーに選ばれました。
  • 2