Ang*_*ker 26 windows microsoft-office csv microsoft-excel
我有一个 Excel 文件,里面有 20 张纸。有没有办法将文件快速转换为 20 个 CSV 文件——每张纸一个?
我当然可以手动完成,但我必须大量处理这些文件,因此拥有某种命令行实用程序(甚至 Excel 命令行开关)会很棒。
小智 18
vembutech 的方法绝对是一个更加完善的解决方案。这是一个轻量级的 VBA 宏,可以从一个工作簿中导出所有工作表。
进入活动工作簿文件夹中的所有名称都是 workbookname_sheetname.csv
Sub exportcsv()
Dim ws As Worksheet
Dim path As String
path = ActiveWorkbook.path & "\" & Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, ".") - 1)
For Each ws In Worksheets
ws.Activate
ActiveWorkbook.SaveAs Filename:=path & "_" & ws.Name & ".csv", FileFormat:=xlCSV, CreateBackup:=False
Next
End Sub
Run Code Online (Sandbox Code Playgroud)
对于评论。原始宏只是使用另存为函数(这有点像关闭原始宏)。如果要在保持原始打开状态的同时执行此操作,则需要复制到新工作簿,保存,关闭新工作簿。
Sub exportcsv()
Dim ws As Worksheet
Dim path As String
path = ActiveWorkbook.path & "\" & Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, ".") - 1)
For Each ws In Worksheets
ws.Copy
ActiveWorkbook.SaveAs Filename:=path & "_" & ws.Name & ".csv", FileFormat:=xlCSV, CreateBackup:=False
ActiveWorkbook.Close False
Next
End Sub
Run Code Online (Sandbox Code Playgroud)
小智 11
您可以使用XLS 到 CSV 转换器代替批处理脚本,这将为您提供更好的用户界面
直接链接:http : //cwestblog.com/wp-content/uploads/2013/04/XLS-to-CSV-Converter-1.1.0.zip
解压缩 .HTA 文件。
双击 .HTA 文件

找到您的 xls 文件所在的文件夹
选择 csv 命名模式并单击开始转换,这会将文件夹中的所有 xls 文件转换为 csv 文件
如果您的文件夹有 3 个 xls 文件和 3 张纸,那么它会为每张纸创建 9 个 csv 文件,您可以使用 csv 命名模式识别 csv 文件
希望这可以帮助!
小智 9
这里是一个Python脚本getsheets.py(镜),你应该安装pandas并xlrd使用它之前。
运行这个:
pip3 install pandas xlrd # or `pip install pandas xlrd`
Run Code Online (Sandbox Code Playgroud)
它是如何工作的?
$ python3 getsheets.py -h
Usage: getsheets.py [OPTIONS] INPUTFILE
Convert a Excel file with multiple sheets to several file with one sheet.
Examples:
getsheets filename
getsheets filename -f csv
Options:
-f, --format [xlsx|csv] Default xlsx.
-h, --help Show this message and exit.
Run Code Online (Sandbox Code Playgroud)
转换成几个xlsx:
$ python3 getsheets.py goods_temp.xlsx
Sheet.xlsx Done!
Sheet1.xlsx Done!
All Done!
Run Code Online (Sandbox Code Playgroud)
转换成几个csv:
$ python3 getsheets.py goods_temp.xlsx -f csv
Sheet.csv Done!
Sheet1.csv Done!
All Done!
Run Code Online (Sandbox Code Playgroud)
来自ExtendOffice的宏用于将选项卡保存在您的文档文件夹中:
Sub ExportSheetsToCSV()
Dim xWs As Worksheet
Dim xcsvFile As String
For Each xWs In Application.ActiveWorkbook.Worksheets
xWs.Copy
xcsvFile = CurDir & "\" & xWs.Name & ".csv"
Application.ActiveWorkbook.SaveAs Filename: = xcsvFile, _
FileFormat: = xlCSV, CreateBackup: = False
Application.ActiveWorkbook.Saved = True
Application.ActiveWorkbook.Close
Next
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
85671 次 |
| 最近记录: |