如何自动填充列中的空白单元格

时间:2019-07-12 18:07:16

标签: if-statement google-apps-script google-sheets google-sheets-formula array-formulas

我需要有关Google表格的一些帮助。 我有两列,假设是A1-A100和C1-C100。在A1-A100中,我有一个姓名(学生)列表,但可能少于100个,因此,例如,从A85到A100可以为空白。在C1-C100中,我的成绩是0到10。我需要一个脚本,该脚本会自动在成绩(C)列中的空白单元格中填入“ AUS”(西班牙语中“不存在”的缩写)。但是只有对应于某个学生的单元格...因此,从C85到C100,应将其留空。

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

使用Spreadsheet服务[1]中的函数和类,我为所需的代码制作和测试了代码:

function fill() {
  var tss = SpreadsheetApp.getActiveSpreadsheet();
  var values = tss.getRange("Sheet1!B1:B100").getValues();

  for(i=0; i<values.length; i++) {
    var value = values[i][0];

    if (value == "") {
      var rangeB = tss.getSheetByName("Sheet1").getRange(i+1,2);
      var rangeA = tss.getSheetByName("Sheet1").getRange(i+1,1);

      if(!rangeA.isBlank()) {
        rangeB.setValue("AUS");
      }
    }
  }
}

该功能必须位于绑定到电子表格的脚本中,然后您可以添加宏[2],以便可以从表格用户界面运行该功能。

[1] https://developers.google.com/apps-script/reference/spreadsheet/

[2] https://developers.google.com/apps-script/guides/sheets/macros

答案 1 :(得分:-1)

=ARRAYFORMULA(IF((A2:A<>"")*(B2:B=""), "AUS", B2:B))

0