Я пытаюсь извлечь информацию XML из формы XFA, используя VBA.
Приведенный ниже код работает для извлечения данных XML в отдельный файл, но требует взаимодействия с пользователем (пользователь попросил дать файлу XML имя). Я отказался от попыток автоматизировать это без взаимодействия с пользователем из-за требования Adobe о «безопасном пути» (которое невозможно обойти с помощью автоматизации VBA).
Dim objPDDoc As New AcroPDDoc
Dim objJSO As Object
Dim strSafePath as String
strSafePath = ""
objPDDoc.Open (FileName)
Set objJSO = objPDDoc.GetJSObject
objJSO.xfa.host.exportdata strSafePath, 0
Что я предпочел бы сделать, так это проанализировать XML информация напрямую с использованием MSXML2.DOMDocument60. Я надеялся, что смогу сделать что-то вроде этого:
Dim XMLDoc As New MSXML2.DOMDocument60
If XMLDoc.Load(objJSO.xfa.host.exportdata) = True Then
Call funcParse(XMLDoc)
End if
Однако загрузка XMLDoc
с objJSO.xfa.host.exportdata
не работает, и я не могу понять, какие, если вообще есть, возможности там должны передавать информацию XML с использованием любых методов / свойств xfa.host.
Любая помощь приветствуется - также сообщается, что это невозможно в VBA.