使用按钮(GAS)更新Flextable

时间:2013-12-09 11:16:13

标签: google-apps-script google-spreadsheet-api

在我的Google App脚本中,我有一个包含3行,2列和按钮的灵活表(在表格下方)。

当我点击按钮时,我想,flextable(0,0)中的第一个单元格应该显示“There”。附加的代码运行没有错误,但没有显示表中的“那里”,虽然它显示在日志中调用。

Code.gs
var myapp = UiApp.createApplication().setTitle('4C Report');
var ss = SpreadsheetApp.openById("myssid");
var sheet = ss.getSheetByName("Report");

var table = myapp.createFlexTable().setId("mytable");
table.setText(1, 0, sheet.getRange("A1").getValue());
table.setText(2, 0, sheet.getRange("A2").getValue());
table.setText(3, 0, sheet.getRange("A3").getValue());
table.setText(1, 1, sheet.getRange("B1").getValue());
table.setText(2, 1, sheet.getRange("B2").getValue());
table.setText(3, 1, sheet.getRange("B3").getValue());

var mypanel = myapp.createVerticalPanel();

var buttonpanel = myapp.createHorizontalPanel();
var handler = myapp.createServerHandler("buttonHandler1");
var C1 = myapp.createButton("C1",handler);

buttonpanel.add(C1)
mypanel.add(table);
myapp.add(mypanel).add(buttonpanel);
return myapp;

scripthandler.gs
function buttonHandler1(e) {
var myapp = UiApp.getActiveApplication();
var table = myapp.getElementById("mytable")
table.setText(0 , 0 ,"There");

 Logger.log("Called")
  }

在期待中感谢你。

1 个答案:

答案 0 :(得分:1)

你只需要在Logger.log(“Called”)之后放下波纹管返回

return myapp;

代码看起来像这样

scripthandler.gs

function buttonHandler1(e) {
 var myapp = UiApp.getActiveApplication();
 var table = myapp.getElementById("mytable")
 table.setText(0 , 0 ,"There");

 Logger.log("Called")
 return myapp;
}