Partager via


Excel.CustomXmlPartCollection class

Collection de composants XML personnalisés.

Extends

Remarques

[ Ensemble d’API : ExcelApi 1.5 ]

Propriétés

context

Contexte de requête associé à l’objet . Cela connecte le processus du complément au processus de l’application hôte Office.

items

Obtient l’élément enfant chargé dans cette collection de sites.

Méthodes

add(xml)

Ajoute une nouvelle partie XML personnalisée au classeur.

getByNamespace(namespaceUri)

Obtient une nouvelle collection limitée de parties XML personnalisées dont les espaces de noms correspondent à l’espace de noms donné.

getCount()

Obtient le nombre de parties XML personnalisées dans la collection.

getItem(id)

Obtient une partie XML personnalisée en fonction de son ID.

getItemOrNullObject(id)

Obtient une partie XML personnalisée en fonction de son ID. Si n’existe CustomXmlPart pas, cette méthode retourne un objet avec sa isNullObject propriété définie sur true. Pour plus d’informations, consultez *Méthodes et propriétés OrNullObject.

load(options)

Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync() avant de lire les propriétés.

load(propertyNames)

Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync() avant de lire les propriétés.

load(propertyNamesAndPaths)

Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync() avant de lire les propriétés.

toJSON()

Remplace la méthode JavaScript toJSON() afin de fournir une sortie plus utile lorsqu’un objet API est passé à JSON.stringify(). (JSON.stringifyappelle à son tour la toJSON méthode de l’objet qui lui est passé.) Alors que l’objet d’origine Excel.CustomXmlPartCollection est un objet API, la toJSON méthode renvoie un objet JavaScript brut (typé en tant Excel.Interfaces.CustomXmlPartCollectionDataque ) qui contient un tableau « items » avec des copies superficielles de toutes les propriétés chargées à partir des éléments de la collection.

Détails de la propriété

context

Contexte de requête associé à l’objet . Cela connecte le processus du complément au processus de l’application hôte Office.

context: RequestContext;

Valeur de propriété

items

Obtient l’élément enfant chargé dans cette collection de sites.

readonly items: Excel.CustomXmlPart[];

Valeur de propriété

Détails de la méthode

add(xml)

Ajoute une nouvelle partie XML personnalisée au classeur.

add(xml: string): Excel.CustomXmlPart;

Paramètres

xml

string

Contenu XML. Doit être un fragment XML valide.

Retours

Remarques

[ Ensemble d’API : ExcelApi 1.5 ]

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/18-custom-xml-parts/create-set-get-and-delete-custom-xml-parts.yaml

await Excel.run(async (context) => {
    // You must have the xmlns attribute to populate the 
    // CustomXml.namespaceUri property.
    const originalXml = "<Reviewers xmlns='http://schemas.contoso.com/review/1.0'><Reviewer>Juan</Reviewer><Reviewer>Hong</Reviewer><Reviewer>Sally</Reviewer></Reviewers>";
    const customXmlPart = context.workbook.customXmlParts.add(originalXml);
    customXmlPart.load("id");
    const xmlBlob = customXmlPart.getXml();

    await context.sync();

    const readableXml = addLineBreaksToXML(xmlBlob.value);
    $("#display-xml").text(readableXml);

    // Store the XML part's ID in a setting.
    const settings = context.workbook.settings;
    settings.add("ContosoReviewXmlPartId", customXmlPart.id);

    await context.sync();
});

getByNamespace(namespaceUri)

Obtient une nouvelle collection limitée de parties XML personnalisées dont les espaces de noms correspondent à l’espace de noms donné.

getByNamespace(namespaceUri: string): Excel.CustomXmlPartScopedCollection;

Paramètres

namespaceUri

string

Il doit s’agir d’un URI de schéma complet ; par exemple, « http://schemas.contoso.com/review/1.0".

Retours

Remarques

[ Ensemble d’API : ExcelApi 1.5 ]

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/18-custom-xml-parts/test-xml-for-unique-namespace.yaml

await Excel.run(async (context) => {
    $("#display-xml").text("");
    const contosoNamespace = "http://schemas.contoso.com/review/1.0";
    const customXmlParts = context.workbook.customXmlParts;
    const filteredXmlParts = customXmlParts.getByNamespace(contosoNamespace);
    const numberOfPartsInNamespace = filteredXmlParts.getCount();

    await context.sync();

    if (numberOfPartsInNamespace.value == 1) {
        const onlyXmlPartInNamespace = filteredXmlParts.getOnlyItem();
        const xmlBlob = onlyXmlPartInNamespace.getXml();

        await context.sync();

        // Make it a bit more readable.
        const readableXml = xmlBlob.value.replace(/></g, ">\n<");

        $("#display-xml").text(`The only XML part in the namespace ${contosoNamespace} is:
            ${readableXml}`);

    } else {
        console.log(`There are ${numberOfPartsInNamespace.value} XML parts with namespace ${contosoNamespace}. There should be exactly 1.`);
    }        

    await context.sync();
});

getCount()

Obtient le nombre de parties XML personnalisées dans la collection.

getCount(): OfficeExtension.ClientResult<number>;

Retours

Remarques

[ Ensemble d’API : ExcelApi 1.5 ]

getItem(id)

Obtient une partie XML personnalisée en fonction de son ID.

getItem(id: string): Excel.CustomXmlPart;

Paramètres

id

string

ID de l’objet à récupérer.

Retours

Remarques

[ Ensemble d’API : ExcelApi 1.5 ]

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/18-custom-xml-parts/create-set-get-and-delete-custom-xml-parts.yaml

await Excel.run(async (context) => {
    const settings = context.workbook.settings;
    const xmlPartIDSetting = settings.getItemOrNullObject("ContosoReviewXmlPartId").load("value");
    await context.sync();

    if (xmlPartIDSetting.value) {   
        const customXmlPart = context.workbook.customXmlParts.getItem(xmlPartIDSetting.value);

        // The setXml method does a whole-for-whole replacement 
        // of the entire XML.
        customXmlPart.setXml("<Reviewers xmlns='http://schemas.contoso.com/review/1.0'><Reviewer>John</Reviewer><Reviewer>Hitomi</Reviewer></Reviewers>");
        const xmlBlob = customXmlPart.getXml();
        await context.sync();

        const readableXml = addLineBreaksToXML(xmlBlob.value);
        $("#display-xml").text(readableXml);
        await context.sync();
    }
});

getItemOrNullObject(id)

Obtient une partie XML personnalisée en fonction de son ID. Si n’existe CustomXmlPart pas, cette méthode retourne un objet avec sa isNullObject propriété définie sur true. Pour plus d’informations, consultez *Méthodes et propriétés OrNullObject.

getItemOrNullObject(id: string): Excel.CustomXmlPart;

Paramètres

id

string

ID de l’objet à récupérer.

Retours

Remarques

[ Ensemble d’API : ExcelApi 1.5 ]

load(options)

Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync() avant de lire les propriétés.

load(options?: Excel.Interfaces.CustomXmlPartCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions): Excel.CustomXmlPartCollection;

Paramètres

options

Excel.Interfaces.CustomXmlPartCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions

Fournit des options pour les propriétés de l’objet à charger.

Retours

load(propertyNames)

Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync() avant de lire les propriétés.

load(propertyNames?: string | string[]): Excel.CustomXmlPartCollection;

Paramètres

propertyNames

string | string[]

Chaîne délimitée par des virgules ou tableau de chaînes qui spécifient les propriétés à charger.

Retours

load(propertyNamesAndPaths)

Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync() avant de lire les propriétés.

load(propertyNamesAndPaths?: OfficeExtension.LoadOption): Excel.CustomXmlPartCollection;

Paramètres

propertyNamesAndPaths
OfficeExtension.LoadOption

propertyNamesAndPaths.select est une chaîne délimitée par des virgules qui spécifie les propriétés à charger, et propertyNamesAndPaths.expand est une chaîne délimitée par des virgules qui spécifie les propriétés de navigation à charger.

Retours

toJSON()

Remplace la méthode JavaScript toJSON() afin de fournir une sortie plus utile lorsqu’un objet API est passé à JSON.stringify(). (JSON.stringifyappelle à son tour la toJSON méthode de l’objet qui lui est passé.) Alors que l’objet d’origine Excel.CustomXmlPartCollection est un objet API, la toJSON méthode renvoie un objet JavaScript brut (typé en tant Excel.Interfaces.CustomXmlPartCollectionDataque ) qui contient un tableau « items » avec des copies superficielles de toutes les propriétés chargées à partir des éléments de la collection.

toJSON(): Excel.Interfaces.CustomXmlPartCollectionData;

Retours