Excel XML到CSV转换器VBA
该程序适用于XLS,但不适用于XML 任务:查找扩展名为.xml的饼图文件,并将编辑后的文件转换为.csv 问题:我所有的东西都在工作、转换和保留。但是我告诉他删除空格、删除空行的条件是行不通的。它从表文件中为我保存一个空的.csv文件Excel XML到CSV转换器VBA,excel,xml,vba,Excel,Xml,Vba,该程序适用于XLS,但不适用于XML 任务:查找扩展名为.xml的饼图文件,并将编辑后的文件转换为.csv 问题:我所有的东西都在工作、转换和保留。但是我告诉他删除空格、删除空行的条件是行不通的。它从表文件中为我保存一个空的.csv文件 “在目录中查找xml文件 如果不是curfold,那就什么都不是了 对于curfold.Files中的每个fil 如果InStr(1,fil.Name,“.xml”,vbTextCompare)>0和(InStr(1,fil.Name,“PIE”,vbTextC
“在目录中查找xml文件
如果不是curfold,那就什么都不是了
对于curfold.Files中的每个fil
如果InStr(1,fil.Name,“.xml”,vbTextCompare)>0和(InStr(1,fil.Name,“PIE”,vbTextCompare))>0,那么
d=文件名
设置wb=objEX.Workbooks.Open(路径&“\”&d)
如果指令(1,文件名,“PIE”,vbTextCompare)>0,则
'从数量中删除空格
工作分解表(1).列(“C:C”).NumberFormat=“0.00”
工作分解表(1).列(“D:D”).NumberFormat=“0.00”
“替换”;/“打开”
wb.Sheets(1).Range(“K1”).value=wb.Sheets(1).Range(“K1”).value&“;”
工作分解表(1).范围(“A:K”).替换“,”
wb.Sheets(1).范围(“A1”).值=wb.Sheets(1).范围(“A1”).值和“/”
wb.表格(1).范围(“A:A”)。替换“/”,”
“wb.Sheets(1).范围(“H:H”)。替换为“””
'删除空行
工作分解表(1)。行(“1:3”)。删除
su=1
'删除列L和M
wb.表(1).列(“M:M”)。删除
工作分解表(1).列(“L:L”)。删除
nRow=1
'删除文件末尾的多余空行
当wb.Sheets(1).Cells(nRow,1).Value“”时执行此操作
nRow=nRow+1
环
工作表(1).行(nRow&“:”&nRow+20000).删除
这是.csv中正确的Converter.xml
Sub XMLTOCSV()
Dim f As String
Dim p As String
Dim s As Integer
p = Environ("USERPROFILE") & "\Downloads" & "\"
f = Dir(p & "*.xml")
s = 0
Application.ScreenUpdating = False
Do While Len(f) > 0
s = s + 1
ConvertXMLtoCSV p & f, p & "Test" & s & ".csv"
f = Dir()
Loop
Application.ScreenUpdating = True
End Sub
Sub ConvertXMLtoCSV(xmlFile, csvFile)
Dim xlApp As Application
Dim xlBook As Workbook
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.OpenXML(xmlFile, 2)
xlBook.SaveAs csvFile, 6
xlBook.Close False
xlApp.Quit
End Sub