そのセルが変更されたかどうかを最終的に確認できるように、バインディングを作成しようとしています。ドキュメントには、最も単純な例にしようとしているいくつかの例が示されています。
Office.initialize = function(){
$(document).ready(function() {
Excel.run(function(context){
// This should create a new binding and store it in the bindingsObject
// add(range: Range or string, bindingType: string, id: string)
context.workbook.bindings.add("Sheet1!A1:A2", "Range", "A_binding");
// create a new event handler for this bindings
Office.select("bindings#A_binding").addHandlerAsync(Office.EventType.BindingDataChanged, onBindingDataChanged);
$("#output").append("<br /><br /> Finished Pre-Sync");
return context.sync().then(function(){
$("#output").append("<br /><br />Post Sync")
});
}).catch(function(error){
$("#debugger").append("error: " + JSON.stringify(error.debugInfo));
})
});
}
function onBindingDataChanged(eventArgs){
Excel.run(function(context) {
$("output").append("updated");
})
}
ただし、セル内のデータを変更しても、何も起こらず、エラーも「更新」もありません。これはバインディングを作成する間違った方法ですか?