Я пытаюсь выбрать один узел MSXML2 в Excel, используя предикаты XPath.Я в состоянии выбрать его просто отлично, когда я поставляю строку без обратной косой черты.Но как только я пытаюсь использовать строку пути к файлу, выражение ничего не возвращает.
Вот мой XML:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Directory>
<Document>
<Path/>
<Status/>
<Notes/>
</Document>
<Document>
<Path>C:\Users\Ivelin\Desktop\Workspace\Requests\File.xlsm</Path>
<Status>Started</Status>
<Notes/></Document>
<Document>
<Path>TEST</Path>
<Status>Started</Status>
<Notes/>
</Document>
</Directory>
Это работает:
Dim Stat As IXMLDOMNode
Dim strPath
strPath = "/Directory/Document[Path='TEST']/Status/text()"
MsgBox (strPath)
Set Stat = XDoc.SelectSingleNode(strPath)
MsgBox (Stat.NodeValue)
Этовозвращает ноль:
Dim Stat As IXMLDOMNode
Dim strPath
strPath = "/Directory/Document[Path='C:\Users\Ivelin\Desktop\Workspace\Requests\File.xlsm']/Status/text()"
MsgBox (strPath)
Set Stat = XDoc.SelectSingleNode(strPath)
MsgBox (Stat.NodeValue)
Я пробовал разные предложения, двойные обратные косые черты и т. д., но безуспешно.Так как меня интересуют имена файлов / пути, у меня нет другого выбора, кроме как использовать обратную косую черту.
Любые указатели о том, как решить эту проблему, приветствуются.