1、单一的CSV文件分列的过程:打开CSV文件-选中数据第一列-数据-分列-下一步-分号-完成(1-5)。
2、CSV文件的分列过程就是这样的,如果几十个甚至是上百个CSV都需要分列,这样一个个打开岂不是很花费时间,怎么才能让所有的CSV文件自动分列呢?这里就用到了宏。把所有的Excel放到同一个文件夹中,并且新建一个Excel。
3、启用开发工具
4、编辑VBA复制以下代码到VBA中!Sub Macro1()'' Macro1 Macro''ChDir "C:\Users\Administrator\Desktop\CSV文件自动分列"Dim sDir As StringDim curdir As Stringcurdir = "C:\Users\Administrator\Desktop\CSV文件自动分列"sDir = Dir(curdir & "\*.csv")While Len(sDir)Workbooks.Open Filename:=curdir & "\" & sDirDim temp As Stringtemp = Left(sDir, Len(sDir) - 4)Columns("A:A").Select Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _ TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _ Semicolon:=True, Comma:=False, Space:=False, Other:=False, FieldInfo _ :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _ Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1 _ ), Array(14, 1), Array(15, 1), Array(16, 1), Array(17, 1), Array(18, 1), Array(19, 1), Array _ (20, 1), Array(21, 1)), TrailingMinusNumbers:=True Range("A1").Select ActiveWorkbook.SaveActiveWorkbook.SaveAs Filename:=curdir & "\" & temp & ".xls", _FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _ReadOnlyRecommended:=False, CreateBackup:=FalseActiveWorkbook.ClosesDir = DirWendEnd Sub
5、自动分列