【发布时间】:2012-09-28 14:41:38
【问题描述】:
我有一个大的 CSV 文件,我想将它拆分为多个 CSV 文件。我尝试了许多 VBS 脚本,但似乎无法得到这个。
这个脚本做了我想做的一些事情,但没有将它们保存为 CSV 文件:
Sub Split()
Dim rLastCell As Range
Dim rCells As Range
Dim strName As String
Dim lLoop As Long, lCopy As Long
Dim wbNew As Workbook
With ThisWorkbook.Sheets(1)
Set rLastCell = .Cells.Find(What:="*", After:=[A1], SearchDirection:=xlPrevious)
For lLoop = 1 To rLastCell.Row Step 35
lCopy = lCopy + 1
Set wbNew = Workbooks.Add
.Range(.Cells(lLoop, 1), .Cells(lLoop + 35, .Columns.Count)).EntireRow.Copy _
Destination:=wbNew.Sheets(1).Range("A1")
wbNew.Close SaveChanges:=True, Filename:="Inventory_" & lLoop + 34
Next lLoop
End With
结束子
【问题讨论】:
-
在关闭工作簿之前,将其保存为 CSV:
wbNew.SaveAs FileName:="C:\Temp\MyCSV.csv", FileFormat:=xlCSV。之后,您可以使用SaveChanges:=False关闭工作簿。 -
您可以通过记录集获得更多控制权:stackoverflow.com/questions/427488/…