簡體   English   中英

Google表格宏,用於基於下拉選擇切換到另一張表格

[英]Google sheets macro for switching to another sheet based of drop-down selection

當前正在構建一個功能,當從下拉數據驗證菜單中選擇某個選項時,該用戶將被重定向到工作簿中的另一個工作表。 我目前所擁有的不會返回錯誤,但是也不會達到預期的目的。 任何幫助將不勝感激。

function gotoselectsheetnosheet() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  var range = sheet.getRange(4,3);
  var data = range.getValue();  
  if (data == "Answers")
  {  
     var dinner = ss.getSheetByName('Answers');
     dinner.activate();
   }
}

請查看此圖片以進一步說明

如果您設置了onEdit()觸發器,則此方法有效。

function gotosheet(e)
{
  e.source.getSheetByName(e.value).activate();

}

e.source是電子表格對象的事件事件對象資源。 查看此處以了解更多信息。

因此,下一個是getSheetByName(e.value),e.value是正在編輯的單元格中的新值。

然后下一個激活。 這樣就可以移動到命名工作表了。 因此,大概您已經在驗證設置中選擇了適當的工作表名稱。

驗證設置:

在此處輸入圖片說明

在此處輸入圖片說明 當您在驗證下拉菜單中選擇兩個可能的選擇之一時,將觸發onEdit觸發器,並且該功能會將您帶到具有該名稱的選項卡。

驗證設置中使用的命名范圍:

在此處輸入圖片說明

OnEdit觸發器設置:

在此處輸入圖片說明

試試這個解決方案。

function onEdit(e) {
  if(e.source.getActiveSheet().getName() === "Menu" && e.range.getRow() === 4 && e.range.getColumn() === 3) {
    e.source.getSheetByName(e.value).activate();
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM