[XML] Sélectionner un noeud ayant une valeur d'attribut spécifique

Bonjour à toutes et tous,

je développe une application VBA qui récupère des données dans un fichier XML,
et je me demande comment peut-on sélectionner un noeud spécifique, en fonction d'une valeur d'attribut.

Je m'explique avec un exemple concret :

<?xml version="1.0" encoding="UTF-8"?>
<ExternalTextCollection>
     <PrimaryLanguage xml:lang="en">
     </PrimaryLanguage>
     <Language xml:lang="de">
     </Language>
     <Language xml:lang="fr">
     </Language>
     <Language xml:lang="it">
     </Language>
</ExternalTextCollection>

Je souhaite accéder directement au noeud <ExternalTextCollection><Language xml:lang="fr">.
(sans avoir à boucler sur tous les ChildNodes "Language" en vérifiant leur attribut)

Est-ce possible ?

bonjour,

sur xml, je ne connais pas grand chose ...

https://analystcave.com/vba-xml-working-xml-files/

Du coup, en cherchant d'avantages, en faisant des essais, je suis arrivé à trouver la synthaxe :

'--- Select Node '<ExternalTextCollection><Language xml:lang="fr">'
Set pElement = XDoc.SelectSingleNode("//*[local-name()='ExternalTextCollection']/*[local-name()='Language'][@xml:lang='fr']")
Rechercher des sujets similaires à "xml selectionner noeud ayant valeur attribut specifique"