有沒有辦法將Excel表格保存爲XML?我有XML Schema文件...和表格中的一些數據......並且我在Excel中有另存爲XML文件選項,但是我可以將文件從VBA保存爲XML嗎?我想自動化一個流程,但我沒有找到這個選項。謝謝!保存爲XML與VBA?
回答
好ol宏錄製救了我這段時間:))(我爲什麼沒有使用它之前,我張貼在這裏) 所以... 加載您有一個XML架構:
ActiveWorkbook.XmlMaps.Add("Book2.xml", "raport").Name _
= "raport_Map"
並將其保存爲XML:
ActiveWorkbook.SaveAsXMLData Filename:="Book3.xml", _
Map:=ActiveWorkbook.XmlMaps("raport_Map")
誰曾想到,就這麼簡單?
+1)Gr8 Job!當你自己發現某些東西的時候真的很有趣。是不是;) – 2012-03-04 19:59:27
在閱讀您的答案之前,我並沒有意識到xml映射,並且想爲這些與我相同的案例添加一條有用的信息:[在Excel 2010中創建XML映射架構](https ://msdn.microsoft.com/en-us/library/office/gg469857%28v=office.14%29.aspx?f = 255&MSPPError = -2147217396) – DrHaze 2016-01-15 13:29:53
此鏈接幫助我最 - >http://curiousmind.jlion.com/exceltotextfile
腳本的鏈接:
Sub MakeXML(iCaptionRow As Integer, iDataStartRow As Integer, sOutputFileName As String)
Dim Q As String
Q = Chr$(34)
Dim sXML As String
sXML = "<?xml version=" & Q & "1.0" & Q & " encoding=" & Q & "UTF-8" & Q & "?>"
sXML = sXML & "<rows>"
''--determine count of columns
Dim iColCount As Integer
iColCount = 1
While Trim$(Cells(iCaptionRow, iColCount)) > ""
iColCount = iColCount + 1
Wend
Dim iRow As Integer
iRow = iDataStartRow
While Cells(iRow, 1) > ""
sXML = sXML & "<row id=" & Q & iRow & Q & ">"
For icol = 1 To iColCount - 1
sXML = sXML & "<" & Trim$(Cells(iCaptionRow, icol)) & ">"
sXML = sXML & Trim$(Cells(iRow, icol))
sXML = sXML & "</" & Trim$(Cells(iCaptionRow, icol)) & ">"
Next
sXML = sXML & "</row>"
iRow = iRow + 1
Wend
sXML = sXML & "</rows>"
Dim nDestFile As Integer, sText As String
''Close any open text files
Close
''Get the number of the next free text file
nDestFile = FreeFile
''Write the entire file to sText
Open sOutputFileName For Output As #nDestFile
Print #nDestFile, sXML
Close
End Sub
Sub test()
MakeXML 1, 2, "C:\Users\jlynds\output2.xml"
End Sub
不幸的是,原始鏈接已關閉。但是你可以在這裏訪問2013年的捕獲:https://web.archive.org/web/20130502005831/http://curiousmind.jlion.com/exceltotextfile – 2016-08-10 08:40:29
- 1. 將Word Doc保存爲2003 XML與VBA
- 2. Application.GetSaveAsFilename - 自動保存與VBA
- 3. MySQL查詢到C#與保存爲XML
- 4. 與XML如何保持架保存VBS
- 5. 保存ArrayList值爲XML C#
- 6. Python將Unicode保存爲XML
- 7. 將數組保存爲xml
- 8. 將Open XML保存爲PDF
- 9. 保存的UIView爲XML
- 10. 旋轉與VBA中保存的圖像
- 11. 如何與VBA保存當前位置
- 12. 將JSON轉換爲XML並保存XML
- 13. 保存3作爲CSV的工作表的列(與VBA)
- 14. 保存PPT爲PNG,無需「導出」VBA
- 15. 爲IE9(vba)自動保存對話框
- 16. Excel VBA:強制用戶保存爲.xlsm
- 17. 如何保存爲.txt在vba
- 18. 將PowerPoint保存爲excel-vba中的MP4
- 19. VBA條件保存爲日期添加
- 20. 將數據保存爲數據庫中的XML與保存多行數據
- 21. XML存儲庫;保存()或不保存()
- 22. 保存列表作爲字符串與Java XML註釋
- 23. VBA:結果保存XML文件到某個路徑
- 24. 如何檢查是否已保存的進口與VBA存在
- 25. 存儲爲文本數與VBA
- 26. 使用LINQ將XML保存爲XML使用LINQ to XML
- 27. vba word wdDialogFileSaveAs不保存
- 28. Excel的VBA不會保存
- 29. VBA不提示保存宏
- 30. Excel不保存VBA參考
像這樣的事情? http://stackoverflow.com/questions/2766760/how-to-generate-xml-from-an-excel-vba-macro – 2012-03-04 19:23:23
那段代碼轉換表中的數據......這是好的,將是最終的解決方案,但我有XML模式文件..我想用Excel已有的選項來做所有事情...我會嘗試記錄宏以查看是否有一些有用的東西。 – 2012-03-04 19:27:38
所以...我想要的是一個VBA代碼,將加載xml scema ...將它做的事情,當我拖/放在桌子上...比使用另存爲並將其另存爲XML – 2012-03-04 19:28:46