簡體   English   中英

協助將腳本從一張紙轉換為另一張紙

[英]Assistance with Converting a Script from one sheet to another

大約 2 年前,我在為復雜的銷售跟蹤器編寫休息按鈕腳本方面得到了幫助,最初的解決方案非常有幫助。 原題供參考

從那以后,我已經能夠為多個項目修改該腳本。 但是,我非常喜歡這個特定項目。 非常感謝任何轉換腳本的幫助!

一個多月以來,我一直對此感到困惑,嘗試了不同的方法,但到目前為止沒有任何效果。 我知道這可能很簡單。 所以,我特別想知道轉換的內容和原因,如果您不介意將這些信息作為答案的一部分分享,以便我將來學習,我將不勝感激!

情況:我創建了一個待辦事項列表儀表板,以幫助我在新職位上保持井井有條。 在同一張紙上有 4 個待辦事項列表和一個摘要框(請參見下面的示例表)。 我正在嘗試為我的個人待辦事項列表編寫重置按鈕代碼。 此列表來自 I4:K26 范圍,需要在該范圍內重復使用。 休息按鈕旨在清除已完成任務的內容,而不刪除行或格式,並按截止日期和名稱對列表進行排序。

進展如何:我已經能夠轉換部分原始編碼。 重置按鈕按我希望的方式對項目進行排序,但不會清除內容。

這是當前項目的示例表

這是原始腳本:

//The one that worked!

function ResetCompletedOnly() {
  var sh=SpreadsheetApp.getActive().getSheetByName('SALES: RESET 2020');
  var rg=sh.getRange('B19:T104');
  var vA=rg.getValues();
  var vF=rg.getFormulas();
 for(var i=0;i<vA.length;i++) {
    if(vA[i][9]==1){//column K
      for(var j=0;j<vA[i].length;j++) {
        if(!vF[i][j]) {
          sh.getRange(i+19,j+2).setValue('');
        }
      }
    }
  }
  rg.sort({column:3,ascending:true});//column C the column number is not relative to the range.
}

到目前為止,這是我嘗試轉換它的嘗試:

//Testing something new..

function ResetClearContents() {
 var sh = SpreadsheetApp
               .getActive()
               .getSheetByName("ResetToDo");
 var rg=sh.getRange('I4:K26');
  var vA=rg.getValues();
  var vF=rg.getFormulas();
  for(var i=0;i<vA.length;i++) {
    if(vA[i][3]==1){//column K based on range I4:K26
      for(var j=0;j<vA[i].length;j++) {
        if(!vF[i][j]) {
          sh.getRange(i+4,j+9).clearContent();
                  }
      }
    }
  }
  rg.sort([{column:11,ascending:true},{column:9,ascending:true},{column:10,ascending:true}]);//column I the column number is not relative to the range.
}

這是運行腳本之前的樣子:

在此處輸入圖像描述

這是腳本完成后的樣子:

在此處輸入圖像描述

但是,這是腳本當前正在執行的操作:

在此處輸入圖像描述

**感謝您花時間回顧我的困境。 我很感激你來看看!
**
附帶問題:谷歌剛剛更新了它的數據驗證下拉菜單,以便在有數據時具有恆定的背景顏色(在 K30:K41 范圍內的示例表中看到)。我討厭這個功能。有沒有辦法進行數據驗證盒子透明以允許交替顯示顏色??)

在范圍 I4:K26 中,K 列是數組中的第 2 項,因為數組從 0 開始。

代替

 if(vA[i][3]==1)

 if(vA[i][2]==1)

暫無
暫無

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

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