我正在尝试编写将Excel文件转换为XML的VBA脚本。我正在使用Application.GetSaveAsFilename()
函数获取文件名。但是这个功能打开了“另存为”对话框。我想抑制对话框,以便每次运行代码时都不会提示用户手动单击保存。相反,XML应该在硬编码位置静默生成。使用VBA脚本将Excel转换为XML时避免“另存为”对话框
代码:
Sub BasicRTE()
Dim FileName As Variant
Dim Sep As String
Dim Ws As Worksheet
Dim autoSetFileName As String
Dim folderName As String
Dim location As Integer
ChDrive (Left(ThisWorkbook.Path, 1))
ChDir ThisWorkbook.Path
ChDir ".."
ChDir "InputFiles"
Application.SendKeys ("{ENTER}")
FileName = Application.GetSaveAsFilename(_
InitialFileName:=ThisWorkbook.Worksheets(1).Name, _
FileFilter:="Xml Files (*.xml),*.xml")
location = InStrRev(FileName, "\", , vbTextCompare)
folderName = Mid(FileName, 1, location - 1)
For Each Ws In ThisWorkbook.Worksheets
If InStr(1, Ws.Name, "#", vbTextCompare) <> 1 Then
ExportToMyXMLFile FName:=CStr(folderName & "\" & Ws.Name & ".xml"), Sep:=CStr(Sep), _
AppendData:=False, Ws:=Ws
End If
Next
End Sub
ExportToMyXMLFile的代码是什么? –
@Mark对不起,没有包含ExportToMyXml的代码,因为那部分代码没有任何问题,所以认为它是无关紧要的。 –