2013-01-01 3 views
14

저는 약간 경험있는 프로그래머입니다 ... 저는 OOP 개념에 대해 잘 알고 있으며 요즘 PHPMySQL을 사용하고 있습니다. Google API 스크립트로 시작하겠습니다. Google 스프레드 시트에서 셀 1,1을 읽는 아주 간단한 프로그램을 작성하려고합니다. API는 Google 스프레드 시트에 포함되어 있지 않으므로 SS 외부에서 실행해야합니다. 여기 Google Script API를 사용하여 스프레드 시트에서 1,1 셀을 읽으려고합니다.

문제의 코드입니다 : 1,1 이 * 선 아래 작동하지 않습니다

function email() { 

// Opens SS by its ID 

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

// Get the name of this SS 

var name = ss.getName(); 

읽기 전지 *

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는 스프레드 시트의 동일한 레벨/동등한 하위 클래스 인 것으로 나타났습니다. Google API Script 프레임 워크의 적절한 계층 구조를 볼 수있는 또 다른 리소스가 있습니까 (예 : Java의 레이아웃과 같은 것입니까?) – Makonnen

+2

내가 나열한 계층 구조는 서로의 서브 클래스라는 의미가 아닙니다. 대신, 스프레드 시트 클래스를 사용하는 의미, 당신은 시트 개체를 얻을 수 있습니다. 시트 개체에서 Range 개체를 얻는 등의 작업을 수행합니다. – Srik

+0

아, 그건 의미가 있습니다. 저는 그런 식으로 일하는 데 익숙하지 않지만, 이제는 그렇게 설명해 드리겠습니다. 도와 주셔서 감사합니다! – Makonnen

관련 문제