Création d’un schéma de mappage XML dans Excel 2010
Prise en main de l’extensibilité Excel 2010 : Découvrez comment créer et utiliser des schémas de mappage XML dans Excel 2010.
Dernière modification : mardi 28 avril 2015
S’applique à : Excel 2010 | Office 2010 | VBA
Dans cet article
Créer le fichier de données XML
Créer le fichier de schéma de mappage XML
Importez le schéma et les données XML dans Excel
Étapes suivantes
Applies to: Microsoft Excel 2010
Date de publication : novembre 2010
Dans cet exercice, vous créez un exemple de fichier de données XML. Vous créez ensuite un schéma de mappage XML à l’aide d’une méthode parmi les deux disponibles. Vous utilisez ensuite ce schéma pour créer une table mappée à l’exemple de données XML. Pour cette tâche, vous devez effectuer ce qui suit :
Créer le fichier de données XML
Créer le fichier de schéma de mappage XML
Importez le schéma et les données XML dans Excel
Créer le fichier de données XML
Dans cette tâche, vous créez avec un éditeur de texte un fichier de données XML qui est utilisé plus tard dans cet exercice.
Pour créer le fichier de données XML
Démarrez l’éditeur de texte, par exemple le Bloc-notes.
Collez ou tapez le code XML suivant dans l’éditeur.
<?xml version='1.0'?> <BookInfo> <Book> <ISBN>989-0-487-04641-2</ISBN> <Title>My World</Title> <Author>Nancy Davolio</Author> <Quantity>121</Quantity> </Book> <Book> <ISBN>981-0-776-05541-0</ISBN> <Title>Get Connected</Title> <Author>Janet Leverling</Author> <Quantity>435</Quantity> </Book> <Book> <ISBN>999-1-543-02345-2</ISBN> <Title>Honesty</Title> <Author>Robert Fuller</Author> <Quantity>315</Quantity> </Book> </BookInfo>
Enregistrez le document en tant que C:\BookData.xml.
Fermez l’éditeur de texte.
Créer le fichier de schéma de mappage XML
Dans cette tâche, vous créez un schéma de mappage XML personnalisé à l’aide de Microsoft Visual Basic for Applications (VBA). Vous pouvez créer un schéma selon deux méthodes : en écrivant explicitement le XML du modèle dans le code ou bien en lisant le fichier XML dans une chaîne puis en créant le schéma à partir de cette chaîne.
Pour créer le XSD dans Excel en écrivant explicitement le XML dans le code
Créez un classeur vierge dans Excel 2010.
Ouvrez Visual Basic Editor en appuyant sur Alt+F11.
Insérez un module général en cliquant sur Insérer puis en cliquant sur Module.
Dans le module, collez ou tapez le code suivant.
Sub Create_XSD() Dim StrMyXml As String, MyMap As XmlMap Dim StrMySchema As String StrMyXml = "< BookInfo >" StrMyXml = StrMyXml & "<Book>" StrMyXml = StrMyXml & "<ISBN>Text</ISBN>" StrMyXml = StrMyXml & "<Title>Text</Title>" StrMyXml = StrMyXml & "<Author>Text</Author>" StrMyXml = StrMyXml & "<Quantity>999</Quantity>" StrMyXml = StrMyXml & "</Book>" StrMyXml = StrMyXml & "<Book></Book>" StrMyXml = StrMyXml & "</ BookInfo >" ' Turn off async loading. Application.DisplayAlerts = False ' Add the string to the XmlMaps collection. Set MyMap = ThisWorkbook.XmlMaps.add(StrMyXml) Application.DisplayAlerts = True ' Create an empty file and output the schema. StrMySchema = ThisWorkbook.XmlMaps(1).Schemas(1).XML Open "C:\MySchema.xsd" For Output As #1 Print #1, StrMySchema Close #1 End Sub
Fermez Visual Basic Editor.
Ensuite, exécutez le code. Sur l’onglet Développeur, cliquez sur Macros, mettez en évidence Create_XSD puis cliquez sur Exécuter. Examinez le fichier de schéma C:\MySchema.xsd. Vous chargerez bientôt ce fichier dans Excel pour créer un mappage XML.
Pour créer le schéma dans Excel en lisant les données XML dans une chaîne
Dans un classeur Excel 2010 vierge, ouvrez Visual Basic Editor en appuyant sur Alt+F11.
Insérez un module général en cliquant sur Insérer puis en cliquant sur Module.
Dans le module, collez ou tapez le code suivant.
Sub Create_XSD2() Dim StrMyXml As String, MyMap As XmlMap Dim StrMySchema As String ' Book.xml is the file created in section one of this topic. StrMyXml = "C:\BookData.xml" ' Turn off async loading. Application.DisplayAlerts = False ' Add the string to the XmlMaps collection. Set MyMap = ThisWorkbook.XmlMaps.Add(StrMyXml) Application.DisplayAlerts = True ' Create an empty file and output the schema. StrMySchema = ThisWorkbook.XmlMaps(1).Schemas(1).XML Open "C:\BookData2.xsd" For Output As #1 Print #1, StrMySchema Close #1 End Sub
Fermez Visual Basic Editor.
Ensuite, exécutez le code. Sur l’onglet Développeurs, cliquez sur Macros, mettez en évidence Create_XSD puis cliquez sur Exécuter. Examinez le fichier de schéma C:\MySchema.xsd. Vous chargerez bientôt ce fichier dans Excel 2010 pour créer un mappage XML.
Importez le schéma et les données XML dans Excel
Dans cette tâche, vous importez le schéma créé dans la section précédente dans Excel pour créer un mappage XML puis pour importer un fichier de données XML.
Pour créer le mappage XML puis pour importer le fichier de données XML dans Excel
Sur l’onglet Développeur, dans le groupe XML, cliquez sur Source pour ouvrir le volet Office Source XML.
Dans le volet Office, cliquez sur Mappages XML.
Dans la boîte de dialogue Mappages XML, cliquez sur Ajouter, accédez au fichier BookInfo.xsd, cliquez sur Ouvrir puis sur OK.
Dans le volet Source XML, faites glisser le nœud BookInfo vers la cellule A1. Cette action crée un tableau dans le classeur, comme le montre la figure 1. Vous pouvez mettre en forme le tableau comme vous le souhaitez.
Figure 1. Tableau créé à partir du mappage XML
Ensuite, importez le fichier de données XML. Sur l’onglet Développeur, cliquez sur Importer.
Dans la boîte de dialogue Importer au format XML, accédez au fichier de données XML puis cliquez sur Importer. Les données sont mappées dans le tableau mis en forme comme illustré dans la figure 2.
Figure 2. Les données XML sont importées dans le tableau