首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Google Spreadheets脚本:检查单元格是否为空

Google Spreadheets脚本:检查单元格是否为空
EN

Stack Overflow用户
提问于 2017-01-16 02:51:41
回答 3查看 109.8K关注 0票数 39

只有当单元格为空时,我才想在该单元格中输入变量。但是,if语句不起作用。有什么建议吗?

代码语言:javascript
运行
复制
var ss=SpreadsheetApp.getActiveSpreadsheet();
var r=ss.getRange("'odpovědi'!A2:J");

var rws=r.getNumRows();

ax=r.getCell(rws-1, 10).getValue();

if (ax == "") {
  ax = "foo";
  r.getCell(rws-1, 9).setValue(ax);
}
EN

回答 3

Stack Overflow用户

发布于 2017-05-15 02:53:07

不需要扩展该值来确定单元格是否为空。Google Spreadsheet API已经有一个这样的方法:Range - isBlank method

代码语言:javascript
运行
复制
var cell = r.getCell(rws-1, 10);

if (cell.isBlank()) {
    cell.setValue("foo");
}
票数 43
EN

Stack Overflow用户

发布于 2017-01-16 03:53:47

尝试:

代码语言:javascript
运行
复制
function myFunction() {
  var ss=SpreadsheetApp.getActiveSpreadsheet();
  var s=ss.getSheetByName('odpovědi')
  var lr=s.getLastRow()  
  var ax=s.getRange(lr, 10).getValue();
     if(ax == ""){
        ax = "foo";
        s.getRange(lr, 10).setValue(ax);
  }
  }
票数 10
EN

Stack Overflow用户

发布于 2018-12-01 13:25:44

如果你已经有了单元格值,那么如果你想避免类型转换(where 0 == "" ),那么使用===!==运算符。

用于减少非空单元格值的代码片段

代码语言:javascript
运行
复制
var sheet = ss.getSheets()[0];     
var range = sheet.getRange("E2:H5");
var currentValues = range.getValues();  

var newValues = [];
for (var row in currentValues) {
  var newRow = []; 
  for (var col in currentValues[row]) {
    if (currentValues[row][col] !==  "") { // if not empty cell
      newRow[col] = currentValues[row][col] - 1;          
    }
    else {
      newRow[col] = currentValues[row][col];
    }
  }
  newValues[row] = newRow;
}    
range.setValues(newValues);
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41664971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档