[New Google Spreadsheet]Gdata APIでスプレッドシートのセルを更新する際の不都合

192 views
Skip to first unread message

Junya Sato

unread,
May 15, 2014, 10:35:26 PM5/15/14
to google-app...@googlegroups.com
こんにちは。

New Google SpreadsheetでのワークシートIDの発番ロジックが変わったことで困っております。

古いGoogleスプレッドシートでは、ワークシートのgidは0,1,2と数値が自動的に1づつ増えていきました。
新しいGoogleスプレッドシートでは、シート1はgid=0ですが、なんとシート2以降のgidは乱数で生成されているようです。桁数も8桁とか。

GData APIでスプレッドシートのセルを更新する際は、ワークシートの内部的なシートID?のod? スタイルで、更新時にパラメタを渡す必要があり、gidからod?スタイルのIDに変換しておりました。
この変換ロジックが成り立たなくなってしまい、困っています。

詳しい説明資料はこちらになります。(Google Appsサポートさんへの問い合わせ内容です。)

回避方法、アドバイス、問い合わせ先はこちら、など、なんでもかまいませんので、情報をいただけると助かります。

backy0175 .

unread,
May 19, 2014, 11:51:02 AM5/19/14
to google-app...@googlegroups.com
sheetクラスの getSheetIdメソッドで gidの値が簡単に取得できますよ。

簡単なサンプルです。
function myFunction() {
 
  var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets();
  for (var i = 0 ; i < sheets.length ; i++) {
    Logger.log(sheets[i].getName() + " = " + sheets[i].getIndex() + ", " + sheets[i].getSheetId());
  }
 
}
Reply all
Reply to author
Forward
0 new messages