VBA读取CSV文件并复制到Sheet1:详细步骤及代码
以下是一个示例代码,它使用VBA在Excel的Sheet1中复制CSV文件的内容:
Sub ReadCSVFile()
Dim filePath As String
Dim textData As String
Dim arrData As Variant
Dim i As Long, j As Long
'打开文件对话框选择CSV文件
With Application.FileDialog(msoFileDialogFilePicker)
.Title = '选择CSV文件'
.Filters.Clear
.Filters.Add 'CSV Files', '*.csv'
.AllowMultiSelect = False
If .Show = -1 Then
filePath = .SelectedItems(1)
Else
Exit Sub
End If
End With
'读取CSV文件内容
Open filePath For Input As #1
textData = Input$(LOF(1), #1)
Close #1
'将CSV文件内容分割成数组
arrData = Split(textData, vbCrLf)
'将数组内容复制到Sheet1
For i = LBound(arrData) To UBound(arrData)
Dim rowData As Variant
rowData = Split(arrData(i), ',')
For j = LBound(rowData) To UBound(rowData)
Sheet1.Cells(i + 1, j + 1).Value = rowData(j)
Next j
Next i
End Sub
要使用此代码,请按以下步骤操作:
- 打开Excel,按下
Alt + F11打开VBA编辑器。 - 在VBA编辑器中,选择
插入菜单下的模块。 - 将上述代码复制并粘贴到新模块中。
- 关闭VBA编辑器。
- 在Excel中,按下
Alt + F8打开宏对话框。 - 选择
ReadCSVFile宏并点击运行按钮。 - 选择要读取的CSV文件并点击
打开按钮。 - 代码将会将CSV文件的内容复制到Sheet1中。
请注意,此代码假设CSV文件的第一行是表头,并将其复制到Sheet1的第一行。如果您的CSV文件不包含表头或格式不同,请根据需要修改代码。
原文地址: https://www.cveoy.top/t/topic/p7kG 著作权归作者所有。请勿转载和采集!