大规模保存xls为csv

时间:2010-04-02 07:34:20

标签: excel vba excel-vba

这就是诀窍。得到'从xls转换为300个文件到csv,写了一些简单的宏来做,这里是代码:

Dim wb As Workbook

For Each wb In Application.Workbooks
wb.Activate

    Rows("1:1").Select
    Selection.Delete Shift:=xlUp
    ActiveWorkbook.SaveAs Filename:= _
        "C:\samplepath\CBM Cennik " & ActiveWorkbook.Name & " 2010-04-02.csv" _
        , FileFormat:=xlCSV, CreateBackup:=False
Next wb

但它并没有完全符合我的要求 - 将文件“example.xls”保存为“example.xls 2010-04-02.csv”,什么我需要的是“示例2010-04-02.csv”

需要支持人员;)

3 个答案:

答案 0 :(得分:2)

您可以尝试删除文件名中的扩展程序。

而不是ActiveWorkbook.Name使用

Left(ActiveWorkbook.Name, InStrRev(ActiveWorkbook.Name, ".") - 1)

删除文件名中最后一个.后的所有内容(包括.)。

答案 1 :(得分:1)

快速而肮脏的方法是

Replace(ActiveWorkbook.Name, ".xls", "")

答案 2 :(得分:0)

local := true - 从控制面板区域设置中获取值,因此将该变量作为分隔符而不是“,”(逗号)。奇妙