【问题标题】:Trying to read cell 1,1 in spreadsheet using Google Script API尝试使用 Google Script API 读取电子表格中的单元格 1,1
【发布时间】:2013-01-01 10:09:26
【问题描述】:

我是一个经验丰富的程序员......我对 OOP 概念有很好的理解,我最近一直在使用 PHPMySQL。我已经开始涉足 Google API 脚本。我正在尝试编写一个非常简单的程序来读取谷歌电子表格中的单元格 1,1。 API 没有嵌入到谷歌电子表格中,我需要它在 SS 之外运行。

这里是有问题的代码:

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 是顶级/父/超类。查看上面的粗体代码,我相信我已经创建了一个 Range 对象并尝试从该对象调用一个方法。我在这里做错了什么?

感谢收看!

【问题讨论】:

    标签: google-apps-script


    【解决方案1】:

    您必须首先获取 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();
    
    }
    

    层次结构是 电子表格->工作表->范围->单元格。

    【讨论】:

    • 谢谢,现在说得通了。但是从一个完整的新手的角度来看,我怎么知道那个结构呢?查看文档 (developers.google.com/apps-script) 默认服务 > 电子表格。 Range、Sheet、Spreadsheet 和 SpreadsheetApp 似乎是 Spreadsheet 的同一级别/相等的子类。是否有其他资源可以让我查看 Google API 脚本框架的正确层次结构(即:就像 Java 的布局一样?)
    • 嗯,我列出的层次结构并不是说它们是彼此的子类。相反,我的意思是使用 Spreadsheet 类,您可以获得一个 Sheet 对象。从 Sheet 对象,你得到一个 Range 对象等等。
    • 啊,这很有道理,我不习惯使用这样的东西,但现在你这样解释,它是有道理的。感谢您的帮助!
    • 范围包含一堆单元格。调用 range.getValue() 时返回哪个单元格的值?
    • @AKh 返回范围内左上角单元格的值。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-08
    • 2012-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多