2016-09-29 2 views
1

Unser Add-In erstellt neues Blatt mit ~ 300 Spalten. Benutzer möchten, dass der Bereich in den ersten beiden Spalten eingefroren wird. Wenn sie sich also nach rechts bewegen, können sie immer noch den Kontext sehen. Irgendwelche Ideen, wie man das erreicht?Wie erreicht man Freeze Pane in Excel mit Office js api?

Antwort

1

Zu diesem Zeitpunkt verfügen wir nicht über diese Funktionalität in unseren APIs, aber wir danken Ihnen für Ihr Feedback und werden es für unsere zukünftigen Wellen neuer Funktionen berücksichtigen.

Grüße, Philip, Entwickler im Team Büro Extensibility

+0

Gibt es APIs ein Blatt zu kopieren? Was ich denke ist, wenn ich eine Vorlage mit Freeze-Bereich bereits drin habe, kann ich das Blatt kopieren und die Daten hinein schreiben? Wird dieser Ansatz funktionieren? – renil

+0

@renil Nicht zu diesem Zeitpunkt, obwohl wir es in naher Zukunft hinzufügen können. Sie können den kompletten Satz von APIs hier finden http://dev.office.com/reference/add-ins/javascript-api-for-office –

+0

Die Fähigkeit, Blätter zu kopieren, wird eine große Ergänzung sein. Benutzer müssen warten, um das Fenster einzufrieren ☺ – renil

0

Diese Funktion ist jetzt in der Beta verfügbar. Bitte wechseln Sie zu CDN, um darauf zuzugreifen. https://appsforoffice.microsoft.com/lib/beta/hosted/office.js

Probe:

async function freezeColumns() { 
    await Excel.run(async (context) => { 
     const sheet = context.workbook.worksheets.getItem("Sample"); 

     // Freeze the first two columns in the worksheet. 
     sheet.freezePanes.freezeColumns(2); 

     //// Similarly, Freeze the top two rows in the worksheet. 
     // sheet.freezePanes.freezeRows(2); 
     //// Freeze the specified range in top-and-left-most pane of the worksheet. 
     // sheet.freezePanes.freezeAt(sheet.getRange("H2:K5")); 


     await context.sync(); 
    }); 
} 

Unfreeze:

async function unfreezeAllPanes() { 
await Excel.run(async (context) => { 
    const sheet = context.workbook.worksheets.getItem("Sample"); 
    sheet.freezePanes.unfreeze(); 

    await context.sync(); 
    }); 
} 

Get Ort:

const frozenRange = sheet.freezePanes.getLocationOrNullObject(); 
frozenRange.load("address"); 
Verwandte Themen