gpt4 book ai didi

javascript - 如何制作【条件格式】脚本?

转载 作者:行者123 更新时间:2023-11-28 08:37:47 24 4
gpt4 key购买 nike

我想要,

如果 Sheet1 ColumnB = Sheet89 ColumnA

然后匹配的 Sheet1 列 B 单元格将为绿色这是我的demo sheet .

根据一些指导原则,我做了这个,但不起作用。

function formatting() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');
var columnB = sheet.getRange(1, 2, sheet.getLastRow()-1, 1);
var bValues = columnB.getValues();
var sheet89 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet89');
var columnO = sheet89.getRange(1, 1, sheet.getLastRow()-1, 1);
var oValues = columnO.getValues();

for (var h = 0; h < bValues.length; h++) {
for (var i = 0; i < oValues.length; i++) {
if (oValues[i][0] == bValues[h][0]) {
sheet.getRange(i + 2, 1, 1, 1).setBackgroundColor('green');
}
}
}
}

最佳答案

下面的解决方案将迭代sheet1的B列中的每个单元格,并对照sheet89的A列中的每个值检查它(尽管您将此命名为ColumnO,但根据您的getValues函数,它将从A列中获取值) )。

如果找到匹配项,sheet1 的 B 列中的单元格就会变成绿色。在示例代码中,您使用 i 循环变量(迭代sheet89 上的行)使sheet1 上的单元格变成绿色。目前尚不清楚您希望哪些单元格变绿。我假设它是sheet1上的单元格,所以我将代码更改为

sheet.getRange(h+1, 2).setBackgroundColor('green');

此外,单个单元格的 getRange 函数仅需要 2 个参数,因此我删除了将单元格着色为绿色的行的 numRows 和 numColumns 参数。

我不确定为什么 bValues 和 oValues 排除最后一行,但我删除了每一个中的 -1,因为如果出于任何原因在空白工作表上运行,它会导致代码失败。 getLastRow() 返回带有值的最后一行,而不是工作表中的下一个空白行。如果你想捕获整个工作表,那么你不应该使用-1。

function formatting() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');

var columnB = sheet.getRange(1, 2, sheet.getLastRow(), 1);
var bValues = columnB.getValues();

var sheet89 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet89');
var columnO = sheet89.getRange(1, 1, sheet.getLastRow(), 1);
var oValues = columnO.getValues();

for (var h = 0; h < bValues.length; h++) {
for (var i = 0; i < oValues.length; i++) {

if (oValues[i][0] == bValues[h][0]) {
sheet.getRange(h + 1, 2).setBackgroundColor('green');
}
}
}
}

关于javascript - 如何制作【条件格式】脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20889520/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com