2013-01-01 10 views
14

私は軽度に経験豊かなプログラマーです...最近OOPの概念を理解しています。PHPMySQLを使用しています。私はGoogle API Scriptを使い始めました。私はGoogleスプレッドシートの1,1セルを読むための非常に単純なプログラムを書くことを試みています。 APIはGoogleスプレッドシートに埋め込まれていないため、SSの外で実行する必要があります。ここでGoogle Script APIを使用してスプレッドシートのセル1,1を読み込もうとしています

は、問題のコードです:以下

function email() { 

// Opens SS by its ID 

var ss = SpreadsheetApp.openById("0AgJjDgtUl5KddE5rR01NSFcxYTRnUHBCQ0stTXNMenc"); 

// Get the name of this SS 

var name = ss.getName(); 

読んセル1,1 *ラインは動作しません*

var data = Range.getCell(0, 0); 

私はgetCell()は範囲内のメソッドであることを理解クラス。私がリソースで見ることができるところからは、Rangeがトップ/ペアレント/スーパークラスのように見えます。上の太字のコードを見ると、私はRangeオブジェクトを作成し、そのオブジェクトからメソッドを呼び出そうとしていると思います。私はここで間違って何をしていますか?

ありがとうございます!

答えて

32

まず、Rangeオブジェクトを取得する必要があります。また、getCell()はセルの値を返しませんが、セルのRangeオブジェクトを返します。 >シート - - >範囲 - >セルだから、

function email() { 

// Opens SS by its ID 

var ss = SpreadsheetApp.openById("0AgJjDgtUl5KddE5rR01NSFcxYTRnUHBCQ0stTXNMenc"); 

// Get the name of this SS 

var name = ss.getName(); // Not necessary 

// Read cell 1,1 * Line below does't work * 

// var data = Range.getCell(0, 0); 
var sheet = ss.getSheetByName('Sheet1'); // or whatever is the name of the sheet 
var range = sheet.getRange(1,1); 
var data = range.getValue(); 

} 

のライン上のものを使用する階層は スプレッドシートです。

+0

ありがとうございました。しかし、完全な初心者の立場からは、その構造をどのように知ることができますか?ドキュメント(https://developers.google.com/apps-script/)のデフォルトサービス>スプレッドシートを参照してください。 Range、Sheet、Spreadsheet、およびSpreadsheetAppは、Spreadsheetの同レベルまたは同等のサブクラスであるようです。 Google API Scriptフレームワークの適切な階層を見ることができる別のリソースがありますか(つまり、Javaがどのようにレイアウトされているかなど) – Makonnen

+2

私が挙げた階層は、それらがお互いのサブクラスであるという意味ではありません。代わりに、私はSpreadsheetクラスを使用していることを意味し、シートオブジェクトを取得できます。シートオブジェクトからは、Rangeオブジェクトなどが取得されます。 – Srik

+0

ああ、それは意味がある、私はそれのようなもので作業するのに慣れていないが、今あなたはそれを説明する方法、それは理にかなっている。ご協力いただきありがとうございます! – Makonnen

関連する問題