繁体   English   中英

Google App 脚本根据该单元格的字体颜色清除单元格值

[英]Google App script to clear cells values on the base of Font color of that cell

我有一个包含很多值的 google 工作表,是否可以写一个小的 function 来清除所有具有红色字体颜色的单元格中的所有值。

解释:

  • 您需要做的第一件事是获取数据范围的字体 colors。 获取数据范围的一种直接方法是使用getDataRange() 要获取数据范围的字体 colors,您需要使用getFontColors() 后者给出了单元格的十六进制字体颜色代码。 谷歌表格中的红色( ui颜色选择器中的第二行第二列)是#ff0000

  • 现在您有了颜色数组,您需要遍历每一行和元素并检查颜色是否等于#ff0000 如果是,则使用clearContent()清除该单元格的内容。

解决方案:

选择工作表的名称而不是Sheet1

function myFunction() {
  const ss = SpreadsheetApp.getActiveSpreadsheet();  
  const sh = ss.getSheetByName('Sheet1');  
  const colors = sh.getDataRange().getFontColors();
  colors.forEach( (r,i) => {     
    r.forEach((c,j)=>{
    if (c=='#ff0000'){
    sh.getRange(i+1,j+1).clearContent();}
  })})
}

限制:

虽然这种方法对于相当数量的数据非常有效,但是在迭代执行getRange的地方使用两个forEach循环并不是一个好的做法。 但我希望它对你有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM