Je souhaite supprimer et réorganiser les sections d'un document Word à l'aide de office.js
. Par exemple, un document Word comporte trois sections. Et voici la liste des en-têtes de sections:OfficeJS -Supprimer et réorganiser des sections dans un document Word
- section Rocking Un
- section Rocking Deux
- section Rocking Trois
utilisateur a changé à:
- section Rocking Trois
- Section de basculement One
Enfin, je veux voir l'impact dans mon document Word. Je peux facilement montrer à l'utilisateur la liste des en-têtes des sections. Et l'utilisateur peut modifier (réorganiser ou supprimer) la liste des en-têtes. J'ai essayé un moyen de le faire. J'ai changé le items
de sections
et j'ai essayé de charger le sections
. Voici le code:
function RearrangeSections(sectionHeaderList) {
Word.run(function (context) {
var sections = context.document.sections;
context.load(sections);
return context.sync()
.then(function() {
if (sections != null) {
var headers = [];
for (var i = 0; i < sections.items.length; i++) {
// Grab the header from the current section
var header = sections.items[i].getHeader('primary');
// Add loading this header to the queue
context.load(header);
// Push this header into the headers collection
headers.push(header);
}
var sectionItems = sections.items; //Get section items into a new list
context.sync().then(function() {
for (var i = 0; i < sectionHeaderList.length; i++) {
for (var j = 0; j < headers.length; j++) {
var targetHeader = sectionHeaderList[i].name; //
if (headerText == targetHeader) {
context.document.sections.items[i] = sectionItems[j]; // Change the section items
}
}
}
context.load(context.document.sections); // Finally load the sections
return context.sync().then(function() {
//
});
});
}
}).catch(function (myError) {
//otherwise we handle the exception here!
});
}).catch(errorHandler);
}
Dans le paramètre de méthode, sectionHeaderList
est une liste d'objets qui a la liste d'en-tête mis à jour (après le changement d'utilisateur). Ici, j'ai juste essayé de réorganiser.
Ce code ne fait rien. Est-ce que j'essaie correctement?
Merci d'avoir lu. Tout type de conseil/aide est le bienvenu!