11

スプレッドシートの上にGoogleスクリプトを書いています。Webアプリとしてデプロイしたい。いくつかの値を示しています。残念ながら、私の現在のコードでは、グーグルは私に思い出させます:

TypeError:nullのメソッド「getSheetByName」を呼び出すことはできません。

どこに間違いがあるのか​​わかりません。

これがコードです

function doGet(e) {
    var app = UiApp.createApplication().setTitle('Details');
    var ss = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
    var dataFromCell = ss.getRange("B4").getValue();

    var mypanel = app.createVerticalPanel();
    var label = app.createLabel(dataFromCell);

    app.add(mypanel);
    app.add(label);

    return app;
}
4

2 に答える 2

32

スタンドアロンのWebアプリでは、getActiveSpreadsheetをアクティブに使用している人がいないため、使用できません...SpreadsheetApp.openById('ID')代わりに、次の例のように、スプレッドシートのURLでIDを取得できます。

https://docs.google.com/spreadsheet/ccc?key=0AnqSFd3iikE3d-------nZIV0JQQ0c1a3dWX1dQbGc#gid=0

との間key=#すなわち0AnqSFd3iikE3d-------nZIV0JQQ0c1a3dWX1dQbGc

于 2012-10-20T17:02:08.597 に答える
3

IDを使用する必要はありません。このコードを試してみてください(スプレッドシートの名前とセルの範囲でmygooglelocationを変更してください。Googleマップで非常にうまく機能しています...

  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('mygooglelocation');
  var ss = SpreadsheetApp.getActive();
  var mylocationInfo   = ss.getRange("A2:B4").getValues();
于 2013-08-18T10:13:43.050 に答える