我正在嘗試制作這個簡單的函式,我從提示回應中獲取我想要填充的范圍和值(所以基本上自動填充給定的范圍與給定的值)。但我得到“例外:未找到范圍”。如何使用提示的回應作為范圍作業?
function myFunction(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var ui = SpreadsheetApp.getUi ();
var response = ui.prompt("Enter Range:",ui.ButtonSet.OK_CANCEL);
if(response.getSelectedButton() == ui.Button.OK){
var inputvalue = ui.prompt("Set Value:",ui.ButtonSet.OK_CANCEL);
var givenvalue = inputvalue.getResponseText();
ss.getRange(response.getResponseText).setValue(givenvalue)
}else if(response.getSelectedButton() == ui.Button.CANCEL){
}
}
uj5u.com熱心網友回復:
發布用于檔案目的。
正如Tanaike所提到的,由于您錯過了()in response.getResponseText(),您將傳遞方法getResponseText()而不是此方法回傳的字串值作為getRange(a1Notation)的引數。由于這不是此方法的有效引數(它需要一個字串),因此您會收到此錯誤。
解決方案:
替換這個:
ss.getRange(response.getResponseText).setValue(givenvalue)
有了這個:
ss.getRange(response.getResponseText()).setValue(givenvalue);
uj5u.com熱心網友回復:
將資料輸入電子表格的對話框
function myFunction() {
const ss = SpreadsheetApp.getActive();
const ui = SpreadsheetApp.getUi();
const r1 = ui.prompt("Enter Range in A1Notation(Remember to include Sheet Name):", ui.ButtonSet.OK_CANCEL);
if (r1.getSelectedButton() == ui.Button.OK) {
let r2 = ui.prompt("Enter value to place in range:", ui.ButtonSet.OK_CANCEL);
if (r2.getSelectedButton() == ui.Button.OK) {
let v = r2.getResponseText();
ss.getRange(r1.getResponseText()).setValue(v)
}
}
}
用戶界面提示
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/353603.html
