0
我有以下格式的數據並且在Excel工作表中有類似的數據。如何在VBA中解析XML文件
<LegalEntityDataVO>
<LegalEntityDataVORow>
<Name>Siemens Corporation</Name>
<LegalEntityIdentifier>010</LegalEntityIdentifier>
<EstablishmentData>
<EstablishmentDataVORow>
<MainEstablishmentFlag>Y</MainEstablishmentFlag>
<Name>Siemens Corporation</Name>
<GeographyCode>US</GeographyCode>
<RegistrationDataEtb>
<RegistrationDataEtbVORow>
<SourceTable>XLE_ETB_PROFILES</SourceTable>
<Name>United States Income Tax</Name>
</RegistrationDataEtbVORow>
<RegistrationDataEtbVORow>
<SourceTable>XLE_ETB_PROFILES</SourceTable>
<Name>United States Federal Tax</Name>
</RegistrationDataEtbVORow>
</RegistrationDataEtb>
</EstablishmentDataVORow>
</EstablishmentData>
<EstablishmentData>
<EstablishmentDataVORow>
<MainEstablishmentFlag>Y</MainEstablishmentFlag>
<Name>US Corporation</Name>
<GeographyCode>US</GeographyCode>
<RegistrationDataEtb>
<RegistrationDataEtbVORow>
<SourceTable>XLE_ETB_PAYBLES</SourceTable>
<Name>United States Service Tax</Name>
</RegistrationDataEtbVORow>
<RegistrationDataEtbVORow>
<SourceTable>XLE_ETB_PAYBLES</SourceTable>
<Name>United States Oil Tax</Name>
</RegistrationDataEtbVORow>
</RegistrationDataEtb>
</EstablishmentDataVORow>
</EstablishmentData>
</LegalEntityDataVORow>
<LegalEntityDataVO>
所以我的要求是比較Excel數據和XML數據。具體來說,我的任務描述如下:
If **LegalEntityIdentifier** value in Excel = **LegalEntityIdentifier** value in xml then
(
If(**MainEstablishmentFlag** value in Excel = **MainEstablishmentFlag** value in Xml then
(
Compare **Name** in Excel with **Name** in XML
)
)
**LegalEntityIdentifier** childnode of LegalEntityDataVORow
**MainEstablishmentFlag** childnode of EstablishmentDataVORow
**Name** childnode of RegistrationDataEtbVORow
這裏是我所面臨的問題:
- 每
LegalEntityDataVORow
包含許多EstablishmentDataVORow
- 每
EstablishmentDataVORow
包含許多RegistrationDataEtbVORow
。
在我的XML文件中,我有100 <LegalEntityDataVORow>
。我如何在VBA中運行上述任務?
http://stackoverflow.com/questions/11305/how-to-parse-xml-using-vba – cullan
XML是一種樹狀結構的文檔和Excel數據是單調的兩維度格式。所以儘管內容可能,但這兩者不能相似。請顯示錶格Excel數據。 – Parfait