电子表格脚本,用于检查单元格是否为数字,如果不是,则清除内容,如果是数字则清除格式

时间:2017-11-09 17:00:19

标签: javascript google-sheets spreadsheet

我并不擅长这种事情,谷歌搜索没有返回任何结果。 有没有人知道如何编写一个脚本来清除特定列中的所有单元格,如果它们不是数字?如果它们只是清除格式化。

我还想为包含文本的多个单元格应用脚本的清晰格式部分。对于这些,不需要检查单元格包含的内容。我只是希望它重置为纯文本。(默认为10,Arial)

到目前为止,这就是我所拥有的一切

{{1}}

我不知道其余的措辞应该如何。我对第一部分感兴趣。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

这将删除文字。如果您愿意,可以通过删除注释掉的脚本将剩余数字设置为文本。

function onEdit(){
var sheet = SpreadsheetApp.getActive().getSheetByName('Market');
var lr=sheet.getLastRow()
var vals = sheet.getRange(2,5,lr,1).getValues()
 var newVals=[]// New array of numbers only and blank where text.
 for(i=0;i<vals.length;i++){
    if(typeof vals[i][0]=="number"){//If a number keep the number.
       newVals.push([vals[i][0]])}
     else{ //If not a number create a blank value.
        vals[i][0]=""
    newVals.push([vals[i][0]])}
     }
 var set= sheet.getRange(2,5,newVals.length,1).setValues(newVals)//Reset column E.
 // sheet.getRange(2,5,newVals.length,1).setNumberFormat('@STRING@')//If ypu want the numbers formated as a string remove //
  Logger.log(newVals)
};