2016-07-19 11 views
3

Ich entwickle ein Excel-Add-In mit der office.js-Bibliothek und muss einige benannte Bereiche erstellen, die später verfolgt und aufgerufen werden können.Wie Sie einen Excel-Bereich mit office.js benennen und referenzieren

jedoch nach der API-Dokumentation:

NamedItemCollection: https://github.com/OfficeDev/office-js-docs/blob/master/reference/excel/nameditemcollection.md

namedItem: https://github.com/OfficeDev/office-js-docs/blob/master/reference/excel/nameditem.md

Es gibt keine Methode für benannte Elemente zu schaffen.

Gibt es eine Möglichkeit, einen Excel-Bereich mit office.js zu benennen und zu referenzieren? Vielen Dank.

Antwort

4

Es gibt keine Möglichkeit, einen Bereich in Excel durch Office.js zu benennen. Nur der Benutzer kann einen Bereich über die Excel-Benutzeroberfläche benennen.

Die gute Nachricht ist, dass es eine andere Art und Weise das gleiche Ziel zu erreichen:

Wenn Sie einen Verweis auf einen Bereich halten wollen, gibt es keine Notwendigkeit, es zu nennen; Es hat bereits einen Namen wie Sheet1!A1:B10.

Wenn Sie einen Verweis auf einen Bereich selbst pflegen wollen, wenn der Benutzer hinzufügt/löscht Zeilen/Spalten, bevor er oder im Inneren, verwenden Sie ein Binding:

var myBindings = Office.context.document.bindings; 
var myAddress = "Sheet1!A1:B10"; 
myBindings.addFromNamedItemAsync(myAddress, "matrix", {id:"myBind"}, function(result){}); 

Und dann, wenn Sie den Bereich zugreifen möchten später können Sie:

Excel.run(function (ctx) { 
    var foundBinding = ctx.workbook.bindings.getItem("myBind"); 
    var myRange = foundBinding.getRange(); 
    myRange.load('values'); 
    return ctx.sync().then(function() { 
     console.log(myRange.values); 
    }); 
}); 

-Michael Saunders, PM für Office-Add-in

+0

kann dies auch für die Erstellung von Abhängigkeitslisten in einer Arbeitsmappe verwendet werden? – iSee