运行 多个工作表上的类似应用脚本代码
Running a similar App Scripts code on Multiple Sheets
最近刚开始使用 App Scripts(这里是初级程序员)。
我正在尝试自动创建列 + 将数据从 B 列转置到新创建的 C 列。
它工作正常,但是当我尝试在多张纸上复制脚本时,只有一个脚本有效。
下面是我的代码(我试图复制我的常量来复制第一个脚本,但是第一个脚本不再工作了。我想我做错了):
// First script working fine.
const ss_1 = SpreadsheetApp.getActiveSpreadsheet();
const sheet_1 = ss_1.getSheetByName('Marketing Report');
function insertColumn() {
const range_1 = sheet_1.getRange('B1:B300').getValues();
const newrange_1 = sheet_1.getRange('C1:C300');
const tmp_1 = new Date();
const yesterday_1 = new Date(tmp_1.setDate(tmp_1.getDate()-1));
sheet_1.insertColumnAfter(2);
newrange_1.setValues(range_1);
sheet_1.getRange('B2').setValue(yesterday_1).setNumberFormat("MMMM");
}
// Second script, I tried to duplicate my constants to replicate the first script but then the first script does not work anymore. I guess I'm doing it the wrong way
const ss_2 = SpreadsheetApp.getActiveSpreadsheet();
const sheet_2 = ss_2.getSheetByName('Sales Report');
function insertColumn() {
const range_2 = sheet_2.getRange('C1:C150').getValues();
const newrange_2 = sheet_2.getRange('D1:D150');
const tmp_2 = new Date();
const yesterday_2 = new Date(tmp_2.setDate(tmp_2.getDate()-1));
sheet_2.insertColumnAfter(3);
newrange_2.setValues(range_2);
sheet_2.getRange('C2').setValue(yesterday_2).setNumberFormat("MMMM");
}
非常感谢任何帮助!
首先,尝试重命名脚本中的一个函数,因为它们具有相同的名称。不要忘记点击保存。请注意,Google Apps 脚本一次可以 运行 一个功能(不包括触发器)。您可以通过下拉菜单(在“调试”和“执行日志”按钮之间)切换您的功能,以更改为您想要的功能 运行。确保两个函数具有不同的名称。
最近刚开始使用 App Scripts(这里是初级程序员)。 我正在尝试自动创建列 + 将数据从 B 列转置到新创建的 C 列。
它工作正常,但是当我尝试在多张纸上复制脚本时,只有一个脚本有效。
下面是我的代码(我试图复制我的常量来复制第一个脚本,但是第一个脚本不再工作了。我想我做错了):
// First script working fine.
const ss_1 = SpreadsheetApp.getActiveSpreadsheet();
const sheet_1 = ss_1.getSheetByName('Marketing Report');
function insertColumn() {
const range_1 = sheet_1.getRange('B1:B300').getValues();
const newrange_1 = sheet_1.getRange('C1:C300');
const tmp_1 = new Date();
const yesterday_1 = new Date(tmp_1.setDate(tmp_1.getDate()-1));
sheet_1.insertColumnAfter(2);
newrange_1.setValues(range_1);
sheet_1.getRange('B2').setValue(yesterday_1).setNumberFormat("MMMM");
}
// Second script, I tried to duplicate my constants to replicate the first script but then the first script does not work anymore. I guess I'm doing it the wrong way
const ss_2 = SpreadsheetApp.getActiveSpreadsheet();
const sheet_2 = ss_2.getSheetByName('Sales Report');
function insertColumn() {
const range_2 = sheet_2.getRange('C1:C150').getValues();
const newrange_2 = sheet_2.getRange('D1:D150');
const tmp_2 = new Date();
const yesterday_2 = new Date(tmp_2.setDate(tmp_2.getDate()-1));
sheet_2.insertColumnAfter(3);
newrange_2.setValues(range_2);
sheet_2.getRange('C2').setValue(yesterday_2).setNumberFormat("MMMM");
}
非常感谢任何帮助!
首先,尝试重命名脚本中的一个函数,因为它们具有相同的名称。不要忘记点击保存。请注意,Google Apps 脚本一次可以 运行 一个功能(不包括触发器)。您可以通过下拉菜单(在“调试”和“执行日志”按钮之间)切换您的功能,以更改为您想要的功能 运行。确保两个函数具有不同的名称。