簡體   English   中英

允許其他用戶執行Google電子表格腳本

[英]Allow other users to execute google spreadsheet scripts

我制作了一個簡單的Google Spreadsheet,后面有一些腳本來根據狀態更新顏色,設置行的更新和創建日期以及其他一些控件。

當我用自己的用戶對其進行編輯時,所有方法都可以正常工作,但是現在將電子表格設置為公開(通過鏈接訪問),其他任何訪問電子表格的人都會收到一個錯誤, you do not have permissions to do this action

我正在使用onEdit()觸發器,顯然來賓用戶沒有執行它們的權限。 我是否必須配置某些東西才能使其正常工作?

謝謝

不是一個真正的解決方案,但有一些觀察結果:
我編寫了一個腳本,並在廣告表格類型的廣告上對其進行了測試:

function imwatchingus(event) {
  Logger.log(JSON.stringify(event));
  try{
    if(event.value=="faux"){
      SpreadsheetApp.getActiveRange().setBackground("red");
    }
    else if(event.value=="vrai"){
      SpreadsheetApp.getActiveRange().setBackground("green");
    }
    else{
      SpreadsheetApp.getActiveRange().setBackground("blue");
    }
  }
  catch(e){}
}


function spyonme(){
  var trigs = ScriptApp.getProjectTriggers();
  var func = [];
  for (var i in trigs){
    func.push(trigs[i].getHandlerFunction());
  }
  if(func.indexOf("imwatchingus")>-1){
    return("already enrolled");
  }
  else{
    ScriptApp.newTrigger("imwatchingus").forSpreadsheet(SpreadsheetApp.getActive().getId()).onEdit().create();
    return("enrolling you");
  }
}

函數imwatchingus是執行此任務的函數(根據其文本為單元格的背景上色為紅色/綠色/藍色)。
為了使此功能正常工作,我向其中添加了一個觸發器。 您可以通過菜單或啟動功能spyonme

在新電子表格上有一個問題 只有第一個單元格(A1)會被修改,但是如果您是匿名用戶,則可以使用此腳本。
在舊的電子表格上,顏色應用於更改后的單元格,但無法在匿名模式下使用。

暫無
暫無

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

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