🔄
ImportCSV
データ処理CSVファイルを選択してアクティブシートにインポートします
🎬 デモGIF準備中
📖 使い方
- VBAエディタを開く(Alt + F11)
- モジュールを挿入(挿入 > モジュール)
- 下記VBAコードをコピー&ペースト
- ブック上で実行(Alt + F8 でマクロ選択)
💡 実行例: ImportCSV を実行し、CSVファイルを選択します
💻 VBAコード
' ImportCSV
' -----------------
' Macro Name: ImportCSV
' Description: CSVファイルを選択してアクティブシートにインポートします
' Parameters: なし
' Returns: なし
' Usage: ImportCSV を実行し、CSVファイルを選択します
' -----------------
Sub ImportCSV()
On Error GoTo ErrorHandler
Dim ws As Worksheet
Dim csvPath As Variant
Dim fileNum As Integer
Dim lineStr As String
Dim fields() As String
Dim rowNum As Long
Dim j As Long
Set ws = ActiveSheet
csvPath = Application.GetOpenFilename("CSVファイル (*.csv), *.csv", , "CSVファイルを選択")
If csvPath = False Then Exit Sub
If Application.WorksheetFunction.CountA(ws.UsedRange) > 0 Then
If MsgBox("シートにデータが存在します。クリアしてインポートしますか?", vbYesNo, "確認") = vbNo Then
Exit Sub
End If
ws.Cells.Clear
End If
fileNum = FreeFile
Open csvPath For Input As #fileNum
rowNum = 1
Do While Not EOF(fileNum)
Line Input #fileNum, lineStr
fields = Split(lineStr, ",")
For j = 0 To UBound(fields)
ws.Cells(rowNum, j + 1).Value = fields(j)
Next j
rowNum = rowNum + 1
Loop
Close #fileNum
MsgBox (rowNum - 1) & " 行をインポートしました", vbInformation, "完了"
Exit Sub
ErrorHandler:
If fileNum > 0 Then Close #fileNum
MsgBox "エラーが発生しました:" & vbCrLf & Err.Description, vbCritical, "エラー"
End Sub