Partager via


Résoudre les problèmes posés par les compléments de Word

Cet article décrit la résolution des problèmes propres à Word. Utilisez l’outil de commentaires à la fin de la page pour suggérer d’autres problèmes qui peuvent être ajoutés à cet article.

Toutes les plages sélectionnées ne sont pas reconnues

Si des sélections non incohérentes sont effectuées, l’API Word fonctionne uniquement sur la dernière plage contiguë de la sélection. Dans ce cas inattendu, lorsque vous sélectionnez une colonne dans une table, puis appelez, par exemple , Document.getSelection, seule la dernière cellule de la sélection est retournée par l’API. Bien que la sélection d’une colonne semble contiguë, l’API la reconnaît comme une sélection non incohérente (par exemple, une cellule par ligne).

Pour en savoir plus sur les sélections non incohérentes, consultez Comment sélectionner des éléments qui ne sont pas les uns à côté des autres.

C’est par conception que la méthode Body.insertFileFromBase64 exclut tout en-tête ou pied de page qui se trouvait dans le fichier source.

Pour inclure des en-têtes ou des pieds de page du fichier source, utilisez Plutôt Document.insertFileFromBase64 .

Obtenir une Exception générale lors de l’utilisation de styles

Si les utilisateurs accèdent à une Exception Générale lorsque votre complément appelle les API Document.insertFileFromBase64 ou Style, il se peut que ces utilisateurs dépassent les limites imposées par l’application Word. Pour en savoir plus sur ces limites, consultez Limitations et spécifications des paramètres d’exploitation dans Word.

Sauts de disposition lors de l’utilisation insertHtml du curseur dans le contrôle de contenu dans l’en-tête

Ce problème peut se produire lorsque les trois conditions suivantes sont remplies.

  1. Avoir au moins un contrôle de contenu dans l’en-tête et au moins un contrôle dans le pied de page du document Word.
  2. Vérifiez que le curseur se trouve à l’intérieur d’un contrôle de contenu dans l’en-tête.
  3. Appelez insertHtml pour définir un contrôle de contenu dans le pied de page.

Le pied de page est ensuite mélangé de manière inattendue avec l’en-tête. Pour éviter cela, effacez le contrôle de contenu dans le pied de page avant de le définir, comme illustré dans l’exemple de code suivant.

await Word.run(async (context) => {
    // Credit to https://github.com/barisbikmaz for this version of the workaround.
    // For more information, see https://github.com/OfficeDev/office-js/issues/129.

    // Let's say there are 2 content controls in the header and 1 in the footer.
    const contentControls = context.document.contentControls;
    contentControls.load();

    await context.sync().then(function () {
        // Clear the 2 content controls in the header.
        contentControls.items[0].clear(); 
        contentControls.items[1].clear();

        // Clear the control control in the footer then update it.
        contentControls.items[2].clear();
        contentControls.items[2].insertHtml('<p>New Footer</p>', 'Replace');
    });
});

Perte de mise en forme de la dernière puce d’une liste ou du dernier paragraphe

Si la mise en forme de la dernière puce d’une liste ou du dernier paragraphe est perdue dans le corps ou la plage spécifié, case activée si vous utilisez Body.insertFileFromBase64 ou Range.insertFileFromBase64. Si c’est le cas, mettez à jour votre code pour utiliser Document.insertFileFromBase64 à la place.

Signification des valeurs de propriété Null dans la réponse

nulla des implications particulières dans les API JavaScript Word. Il est utilisé pour représenter les valeurs par défaut ou aucune mise en forme.

Les propriétés de mise en forme telles que la couleur contiennent des null valeurs dans la réponse lorsque différentes valeurs existent dans la plage spécifiée. Par exemple, si vous récupérez une plage et chargez sa propriété range.font.color:

  • Si tout le texte de la plage a la même couleur de police, range.font.color spécifie cette couleur.
  • Si plusieurs couleurs de police sont présentes dans la plage, range.font.color est null.

Voir aussi