我几乎在这里(从昨天开始)。
但我错过了一些非常明显的东西,而不是我。
如何让clearRange函数将用户的选择识别为要清除的命名范围?
function onOpen() {
var ui = SpreadsheetApp.getUi();
var mainMenu = ui.createMenu("Clear Tenant Details");
mainMenu.addItem("Select 'Current Tenant' Range To Reset", "SelectRange");
mainMenu.addSeparator();
mainMenu.addItem("Select 'Prospective Tenant' Range To Reset", "SelectRange");
mainMenu.addToUi();
ui.showSidebar(createUI());
}
function SelectRange() {
var ui = SpreadsheetApp.getUi();
var result = ui.prompt('Current Tenant Range Reset', 'Please enter the Unit to reset e.g. ADA_current :', ui.ButtonSet.OK_CANCEL);
var button = result.getSelectedButton();
var targetRange = result.getResponseText();
if (button == ui.Button.OK) {
clearRange(targetRange);
}
function clearRange() {
//replace 'Sheet1' with your actual sheet name
var sheet = SpreadsheetApp.getActive().getSheetByName('Sheet17');
sheet.getRange(targetRange).clearContent();
}
}

这条线似乎是罪犯:
sheet.getRange(的 targetRange )clearContent();
我在括号中放置什么,以便使用给出的响应确定清除的范围?
提前致谢。
ħ
答案 0 :(得分:0)
这里工作正常。我用.getActiveSheet()
将其更改为活动工作表PS:您可以使用短信fn + TAB(mac)在Google Apps脚本中自动缩进您的脚本。
function SelectRange() {
var ui = SpreadsheetApp.getUi();
var result = ui.prompt('Current Tenant Range Reset', 'Please enter the Unit to reset e.g. ADA_current :', ui.ButtonSet.OK_CANCEL);
var button = result.getSelectedButton();
var targetRange = result.getResponseText();
if (button == ui.Button.OK) {
clearRange(targetRange);
}
function clearRange() {
//replace 'Sheet1' with your actual sheet name
var sheet = SpreadsheetApp.getActive().getActiveSheet();
sheet.getRange(targetRange).clearContent();
}
}