导入CSV到Excel – 自动“文本到列”和“插入表”

我想在Excel 2010中打开我的CSV(逗号分隔)文件,并自动将文本转换为列,然后select所有活动的单元格并插入带有标题的表格。

是否可以添加一个button到我的function区,这将为我做这一切?

我经常使用不同大小的CSV文件,我觉得每次手动操作都有点痛苦。

有点迟了,但我只是碰到了问题…

这是从select器中select特定的文件:

 Sub OpenCSV() Dim fd As FileDialog Set fd = Application.FileDialog(msoFileDialogFilePicker) fd.AllowMultiSelect = True fd.Show For Each fileItem In fd.SelectedItems Workbooks.OpenText Filename:= _ fileItem _ , Origin:=65001, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _ xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _ Comma:=False, Space:=False, Other:=False, TrailingMinusNumbers:=True Next End Sub 

这将打开所选文件夹中的所有CSV文件:

 Sub OpenCSVFolder() Dim fd As FileDialog Set fd = Application.FileDialog(msoFileDialogFolderPicker) fd.AllowMultiSelect = True fd.Show For Each folderItem In fd.SelectedItems fileItem = Dir(folderItem & "\" & "*.csv") While fileItem <> "" Workbooks.OpenText Filename:= _ folderItem & "\" & fileItem _ , Origin:=65001, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _ xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _ Comma:=False, Space:=False, Other:=False, TrailingMinusNumbers:=True fileItem = Dir Wend Next End Sub 

请注意,这些文件设置为Tab Delimited – 通过更新Tab:=TrueComma:=False参数更改分隔符。