如何使用 Google 电子表格基于 Sheet2 中的相同单元格设置 Sheet1 中单元格的背景颜色?
How to set background colour of a cell in Sheet1, based on the same cell in Sheet2 using Google Spreadsheet?
我有一个 Google 工作簿,其中包含以下表格:
Sheet 1
Sheet2
我需要能够为 Sheet1 个单元格 A1 着色以自动匹配 Sheet2 个单元格 A1。
例如,如果 Sheet2 A1 的背景色为绿色,则 Sheet1 A1 也应自动反映为绿色背景色。如果 Sheet2 A1 颜色变为红色,Sheet1 A1 颜色也应变为红色。
function matchbgs() {
const ss = SpreadsheetApp.getActive();
const sh1 = ss.getSheetByName('Sheet1');
const rg1 = sh1.getRange(1, 1, sh1.getMaxRows(), sh1.getMaxColumns());
const bg1 = rg1.getBackgrounds();
const sh2 = ss.getSheetByName('Sheet2');
const rg2 = sh2.getRange(1, 1, sh2.getMaxRows(), sh2.getMaxColumns());
const bg2 = rg1.getBackgrounds();
if (bg1.length <= bg1.length && bg1[0].length <= bg2[0].length) {
sh2.getRange(rg1.getA1Notation()).setBackgrounds(bg1);
} else {
sh2.insertRowsAfter(bg2.length,bg1.length - bg2.length);
sh2.insertColumnsAfter(bg2[0].length,bg1.length - bg2[0].length);
sh2.getRange(rg1.getA1Notation()).setBackgrounds(bg1);
}
}
我有一个 Google 工作簿,其中包含以下表格: Sheet 1 Sheet2
我需要能够为 Sheet1 个单元格 A1 着色以自动匹配 Sheet2 个单元格 A1。
例如,如果 Sheet2 A1 的背景色为绿色,则 Sheet1 A1 也应自动反映为绿色背景色。如果 Sheet2 A1 颜色变为红色,Sheet1 A1 颜色也应变为红色。
function matchbgs() {
const ss = SpreadsheetApp.getActive();
const sh1 = ss.getSheetByName('Sheet1');
const rg1 = sh1.getRange(1, 1, sh1.getMaxRows(), sh1.getMaxColumns());
const bg1 = rg1.getBackgrounds();
const sh2 = ss.getSheetByName('Sheet2');
const rg2 = sh2.getRange(1, 1, sh2.getMaxRows(), sh2.getMaxColumns());
const bg2 = rg1.getBackgrounds();
if (bg1.length <= bg1.length && bg1[0].length <= bg2[0].length) {
sh2.getRange(rg1.getA1Notation()).setBackgrounds(bg1);
} else {
sh2.insertRowsAfter(bg2.length,bg1.length - bg2.length);
sh2.insertColumnsAfter(bg2[0].length,bg1.length - bg2[0].length);
sh2.getRange(rg1.getA1Notation()).setBackgrounds(bg1);
}
}