
Die Aufgabe meiner Formel besteht darin, das Value
für das Item Number Type
Element im folgenden XML-ähnlichen Text zu extrahieren:
<CustomField>
<Name>Level of Concern</Name>
<Value>N/A</Value>
</CustomField>
<CustomField>
<Name>Item Number Type</Name>
<Value>None</Value>
</CustomField>
"Keine" ist die gewünschte Teilzeichenfolge. Machen Sie sich auf eine wirklich schreckliche Formel gefasst:
=MID(D8, SEARCH("Item Number Type</Name><Value>", D8) + 30,
SEARCH("<", D8, SEARCH("Item Number Type</Name><Value>", D8) + 30)-
(SEARCH("Item Number Type</Name><Value>", D8) + 30))
Diese Formel funktioniert. Ohne Variablen (also die Möglichkeit, den Startindex des Teilstrings zu speichern, der dreimal verwendet wird) weiß ich nicht, wie ich das, was ich brauche, sauberer und effizienter erreichen kann. Wissen Sie das?
Antwort1
Vorausgesetzt, Sie verwenden ein aktuelles Excel, können Sie möglicherweise FILTERXML
eine XPath-Abfrage ausführen.
Sie müssen den XML-ähnlichen Text wahrscheinlich in gültiges XML umwandeln, indem Sie ihn ebenfalls in ein Stammelement einschließen.
Etwas wie:
=FILTERXML("<root>" & D8 & "</root>",
"//CustomField[Name='Item Number Type']/Value/text()")