【问题标题】:how to Append a relative formula into a sheet using the google sheet api如何使用 google sheet api 将相对公式附加到工作表中
【发布时间】:2019-09-27 06:37:50
【问题描述】:

我正在使用 api 将一行附加到 google 工作表,它工作正常,但行中的最后一个对象是一个公式。它不会像 =E3-D3、=E4-D4 那样更改以反映它所在的行,而是保持静态并始终将 =E3-D3 放在行中。该公式仅适用于该行。

这是针对 android 的,我正在使用 Java 库。我知道必须有一个简单的方法来做到这一点,它很常见,但我错过了。 这是一个代码示例:

这些是我传入的对象:o6 是公式,它是错误的,但我不知道如何修复。

 Object o1 = result.getDate(), o2 = result.getDescription(), o3 =  
 String.valueOf(result.getDistance()), o4 = result.getStartTime(),o5 = 
 result.getEndTime(), **o6 ="=E3-D3";**





//for the values that you want to input, create a list of object lists
    List<List<Object>> values = new ArrayList<>();


    //values.add(data1);

    //todo me
    values.add(data);

    //Create the valuerange object and set its fields


    ValueRange valueRange = new ValueRange();
    valueRange.setMajorDimension("ROWS");
    valueRange.setRange(range);
    valueRange.setValues(values);

    AppendValuesResponse avResponse = null;

    try {
        avResponse = this.mService.spreadsheets().values()
                .append(mSpreadSheetId, range, valueRange)
                .setValueInputOption("USER_ENTERED")
                .execute();

到目前为止,我使用的所有公式都占据了一个单元格并汇总了一整列。

【问题讨论】:

    标签: android google-sheets-api google-sheets-formula


    【解决方案1】:

    使用相对公式而不是带有 R1C1 表示法的绝对公式。

    Google 表格中使用了两种定位符号。第一种称为 A1 表示法,使用拉丁字母表中的字符表示列,使用整数表示单元格的行。第二种,称为 R1C1 表示法,使用整数来表示列和行,并在每个前面加上相应的 R 或 C,以表示行号或列号。地址 A1 和 R1C1 是等价的,地址 B5 和 R5C2 也是等价的。

    例如,如果您要更新的单元格位于 H 列中,但您希望它始终反映该行,即使该列不同,请使用相对表示法来执行此操作。 INDIRECT 公式关键字可以在这里为您提供帮助:

    =E3-D3
    

    变成:

    =INDIRECT("R[0]C[-3]", FALSE)-INDIRECT("R[0]C[-4]",FALSE)
    

    对于 H 列。

    【讨论】:

    • 不确定你们是什么人 by H;无论当前行是什么,我都需要添加列,这些列始终是 E&D。
    • 我以 H 为例——在 R1C1 表示法中,R 代表相对行,C 代表相对列。 E 是 H 左侧 3 列,D 是 H 左侧 4 列,因此对于这种情况,您将使用 R[0]C[-3]R[0]C[-4]。这取决于您在哪一列中添加该行。
    • 所以对于给定公式的字符串是: =INDIRECT("R[0]C[-1]", FALSE)- INDIRECT("R[0]C[-2]",FALSE ) 谢谢!!
    • 如果你要更新的单元格在F列,是的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-11
    • 2017-06-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多