Button 添加按钮更新谷歌电子表格。递增单元格并用当前日期更新另一个单元格

Button 添加按钮更新谷歌电子表格。递增单元格并用当前日期更新另一个单元格,button,google-apps-script,google-sheets,google-apps,Button,Google Apps Script,Google Sheets,Google Apps,我们有一个电子表格,上面有我们健身房的会员名单。我们希望采用一种方式,教练可以带着iPad四处走动,然后点击一个按钮“登记”我们的会员。通常情况下,出席的成员人数很少——每班可能有20-30名成员。但是,我们需要一种方法来尝试让教练负责,这样,如果有人在3周内没有出现,我们可以通过电子邮件询问他们去了哪里 我已经创建了一个可以编辑的测试电子表格。我需要一些建议或编写脚本的帮助,以执行以下操作: 我想要的是在最左边的“签入”栏中,在每个成员姓名旁边有一个按钮,我们的教练在场时可以单击该按钮。这将在

我们有一个电子表格,上面有我们健身房的会员名单。我们希望采用一种方式,教练可以带着iPad四处走动,然后点击一个按钮“登记”我们的会员。通常情况下,出席的成员人数很少——每班可能有20-30名成员。但是,我们需要一种方法来尝试让教练负责,这样,如果有人在3周内没有出现,我们可以通过电子邮件询问他们去了哪里

我已经创建了一个可以编辑的测试电子表格。我需要一些建议或编写脚本的帮助,以执行以下操作:

我想要的是在最左边的“签入”栏中,在每个成员姓名旁边有一个按钮,我们的教练在场时可以单击该按钮。这将在“总签入”列中添加+1,并用当前日期/时间戳更新“上次签入”列

我对谷歌文档中的脚本是全新的,所以提前感谢您提供的任何专业知识!非常感谢

给你

电子表格

脚本用户界面(从Serge所说的任何设备打开此url。)

代码:


更好的方法可能是构建一个小UI,其中包含一个包含成员和按钮的简单列表框。它还可以读取和写入电子表格。这在平板电脑或手机上肯定比谷歌电子表格更有用。干得好:)我宁愿想象一个下拉列表和一个按钮,但这更简单,只要你不需要很多成员来显示…(可能把整个面板放在一个滚动面板中?)
function doGet() {
  var ss = SpreadsheetApp.openById('0AvmOEVr803HMdDE5MmZXMlQ1cnpzQ21wYkNNZ19ENXc');
  var sheet = ss.getSheetByName('members');
  var members = sheet.getRange(2, 1, sheet.getLastRow()-1, 1).getValues();
  Logger.log(members)


  var app = UiApp.createApplication().setTitle('Gym Check In');
  var grid = app.createFlexTable().setId('grid');
  app.add(grid);

  var row = 0;
  var column = 0;

  for (var m in members) {    

    grid.setWidget(row, 0, app.createLabel(members[m]));
    grid.setWidget(row, 1, app.createButton('Check In').setId(row+2).addClickHandler(app.createServerHandler('checkIn').addCallbackElement(grid)).addClickHandler(app.createClientHandler().forEventSource().setEnabled(false)));
    row++;
  }
  return app;
}

function checkIn(e) {
  var ss = SpreadsheetApp.openById('0AvmOEVr803HMdDE5MmZXMlQ1cnpzQ21wYkNNZ19ENXc');
  var sheet = ss.getSheetByName('members');

  var button = e.parameter.source;

  sheet.getRange(button, 2).setValue(new Date());  
}