【问题标题】:Google Spreadsheet, Checking the name of the sheet with a cell in a sheet谷歌电子表格,用工作表中的单元格检查工作表的名称
【发布时间】:2025-12-29 22:55:07
【问题描述】:

我有一个包含 3 张表格的 Google 电子表格。

在第一张表中,我有另外两张表的简历。此工作表有一个“C”列,其中写有与简历对应的工作表名称。

现在我想要一个脚本来检查工作表的名称,如果名称与“C”列中的单元格匹配,则将“C”列中的相应单元格着色为红色。

我已经编写了这段代码,但似乎无法正常工作!

function myFunction() {

var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');
var ss = SpreadsheetApp.getActiveSpreadsheet();
var columnC = sheet.getRange (1, 3, sheet.getLastRow(), 1);
var Cvalues = columnC.getValues();
var allSheets = ss.getSheets();
var allSheetNames = new Array();

for (var i = 0; i < allSheets.length; i++)
{
  allSheetNames.push(allSheets[i].getName());
}

for (var j=0 ; j < Cvalues.length; j++)
{
if (Cvalues[j][0] == allSheets) {
  sheet.getRange( j, 1, 1, 1).setBackgroundColor('red');}
 }

 }

【问题讨论】:

    标签: google-apps-script google-sheets


    【解决方案1】:

    这里的问题:

    if (Cvalues[j][0] == allSheets) {
    

    您的allSheets 是一个数组,因此Cvalues[j][0] 中的值永远不会等于它。您可能希望它确定Cvalues[j][0] 是否出现在allSheets 中的任何位置。这样做的方法如下:

    if (allSheets.indexOf(Cvalues[j][0]) !== -1) {
      ...
    

    【讨论】:

      最近更新 更多