XML에서 가져온 Access 테이블이 있습니다. 내보낼 때 원래 XML 테이블과 동일한 XML 구조가 없습니다.VBA를 사용하여 Access Table을 XML로 내보내기
<?xml version="1.0" standalone="true"?>
<profiling>
<program>
<name>118CDSpro</name>
<p1on>1</p1on>
<p1tool>36</p1tool>
<p2on>OFF</p2on>
<cut>OFF</cut>
<rule>OFF</rule>
<desc>118 Clad DirectSet Profile</desc>
<pic>akv.bmp</pic>
<ten>dilec_F</ten>
</program>
<profiling/>
이 내가 수출에서 무엇을 얻을 수 있습니다 : 다음과 같이
원래 수입 테이블 보이는
<?xml version="1.0" encoding="UTF-8"?>
<dataroot generated="2016-06-27T12:16:29" xmlns:od="urn:schemas microsoft-com:officedata">
<Profiling>
<name>Din_C92S_pro2</name>
<p1on>1</p1on>
<p1tool>40</p1tool>
<p2on>OFF</p2on>
<cut>OFF</cut>
<rule>OFF</rule>
<desc>Inswing Door Sash Profile 2 (Storm)</desc>
<ten>dilec_F</ten>
</Profiling>
</dataroot>
내가 문제가 끝내고 .xsl 파일 내에있는 생각하지만, 나는 새로운 오전 VBA로 보내고 어떻게 사용되는지 확신 할 수 없습니다.
이 코드는 원래 형식과 관련하여 매우 구체적입니다.
의견을 보내 주시면 감사하겠습니다.
옵션 2 코드 :
Sub ProfileXML2()
' RAW XML EXPORT
Application.ExportXML acExportTable, "Profiling", "C:\MyData\Crafter 0610\Crafter\MACHINE\SCHEMAS\ProfileExport.xml"
' TRANSFORM RAW XML (OPTION 2 - full XSLT processor)
Dim xmlDoc As Object, xslDoc As Object, newDoc As Object
Set xmlDoc = CreateObject("MSXML2.DOMDocument")
Set xslDoc = CreateObject("MSXML2.DOMDocument")
Set newDoc = CreateObject("MSXML2.DOMDocument")
' LOAD XML AND XSL FILES
xmlDoc.Load "C:\MyData\Crafter 0610\Crafter\MACHINE\SCHEMAS\ProfileExport.xml"
xmlDoc.async = False
xslDoc.Load "C:\MyData\Crafter 0610\Crafter\MACHINE\SCHEMAS\ProfilingSchema.xsl"
xslDoc.async = False
' TRANSFORM SOURCE TO FINAL
xmlDoc.transformNodeToObject xslDoc, newDoc
newDoc.Save "C:\MyData\Crafter 0610\Crafter\DATA\ProfilingTest.xml"
Set newDoc = Nothing
Set xslDoc = Nothing
Set xmlDoc = Nothing
End Sub
둘 다 테스트했고 첫 번째 옵션은 들여 쓰기가 없다는 사실 외에도 XML 데이터 테이블에 실제로 영향을주지 않는다고 생각합니다. 두 번째 옵션은 "하나의 최상위 요소 만 XML 문서에 허용됩니다"라는 오류 메시지가 나타납니다. 첫 번째 옵션이 훌륭하게 작동하므로 내 지식을 제외하고는별로 중요하지 않습니다. –
좋아요! 답변이 도움이된다면 동의하십시오. 두 번째 옵션은 들여 쓰기가 적절합니다. 나는 그 오류를 재현 할 수 없다. 경로가 올바른 파일을 가리키는 지 확인하십시오. – Parfait
저는 여전히 답변과 의견의 차이를 탐색하려고합니다. 나는 원래의 질문에 옵션 2와 관련하여 뭔가를 추가했다. 올바르게 코딩되지 않은 것이있다. –