使用VBA将数据保存在列中的数据
我在Excel-VBA中创build了一个macros:
- 创build一个新的工作表
- 将数据写入5列
- 将该文件保存为CSV
- closures文件
问题是,一旦文件closures,数据不再以列分隔。 但它是逗号分隔并连接成一个单一的列。
奇怪的是,手动closures最近创build的csv文件(而不是在VBA中closures它)解决了这个问题,因为当再次打开数据时,数据仍然在列中。 。
我在这里要做的是在VBA中保存/closures文件,并将数据保存在列中。
这是一个例子:
Sub test() Workbooks.Add Cells(1, 1) = "a" Cells(1, 2) = "a" Cells(1, 3) = "a" ActiveWorkbook.SaveAs filename:= "C:\Users\user\Desktop\File.csv", FileFormat:=xlCSV End Sub
然后手动closures“File.csv”并再次打开它:
第二个例子:
Sub test() Workbooks.Add Cells(1, 1) = "a" Cells(1, 2) = "a" Cells(1, 3) = "a" ActiveWorkbook.SaveAs filename:= "C:\Users\user\Desktop\File.csv", FileFormat:=xlCSV ActiveWorkbook.Close End Sub
该文件在这里自动closures。 以下是手动打开的结果:
这适用于我:
Sub test() Workbooks.Add Cells(1, 1) = "a" Cells(1, 2) = "a" Cells(1, 3) = "a" With ActiveWorkbook .SaveAs Filename:="C:\Users\user\Desktop\File.csv", FileFormat:=xlCSV, Local:=True .Close False End With End Sub