0

Google にログインしたユーザーのスプレッドシート ベースのデータを Ui SplitLayoutPanel に表示するスクリプトを作成したいと考えています。私は今まで次のようなことを書いていました:

function doGet() {
  var app = UiApp.createApplication();
  var sPanel = app.createSplitLayoutPanel();
  sPanel.addWest(app.createLabel('Hierarchy'), 100);
  var handler=app.createClientHandler("MyHierarchy");
  handler
  sPanel.addNorth(app.createLabel('List of my Hierarchy'), 200);
  sPanel.add(app.createLabel('Timesheet'));
  sPanel.setHeight('100%').setWidth('100%');
  app.add(sPanel);
  return app;
}

function MyHierarchy() {
  var app = UiApp.createApplication();
  var ss=SpreadsheetApp.openById("id_of_the_Spreadsheet")
  var user=Session.getActiveUser().getEmail();
  return app;
}

スプレッドシートには、従業員とそれぞれのマネージャー (Google Apps メール アカウントを含む) のリストがあります。このマネージャーのメールに基づいてデータをフィルター処理したいと考えています。どうすれば続行できますか?

4

1 に答える 1

0

これは単純なルックアップにすぎないので、これを別の関数に記述します。作業を開始するために、いくつかのモックアップ コードを提供します。

function getEmployeesUnder(manager) {
  var employees = [];
  var sheet = SpreadsheetApp.openById("YOUR SHEET ID").getSheetByName("Your sheet name");
  var values = sheet.getDataRange().getValues();
  for (var i in values) {
    if (values[i][1] == manager) {
      employees.push(values[i][0]);
    }
  }
  return employees;
}

これは、マネージャーが 2 番目の列にあり、従業員が 1 番目の列にあることを前提としています。

このデータをどのように表示するかは、完全にあなた次第です。

于 2013-02-26T16:34:22.930 に答える