2013-03-20 81 views
1

我是這個Google腳本的總新手,我一直在玩腳本以顯示每個單元格的更新和用戶的評論框。在單元格中顯示最新修改的評論 - Google電子表格

所以,例如我有列A中的Url列表,並且在列b,c,d,e,f中有各種任務。

當任務完成時,我希望完成任務的人用簡單的「是」(甚至是下拉選擇/複選框)更新工作表。完成後,我想創建/更新評論,說明更新該特定單元格的日期和用戶。

我目前使用的腳本是這樣的: -

function onEdit(e) 

{ 
    // Get all information, Cell, Date, User 

    var sheet = event.source.getActiveSheet(); 

    var cell = event.source.getActiveRange(); 

    var date = Utilities.formatDate(new Date(), "GMT", "dd-MM-yyyy"); 

    var user = Session.getActiveUser().getUserLoginId(); 

    //Write to Cell Comment 

    cell.setComment(date + " User:" + user); 

} 

我有2個問題與此: -

  1. 這完全適用於我,但是當我與紙張其他人, 評論框顯示的是更新的日期,但不是用戶。
  2. 當某人覆蓋已由 腳本更新的單元格時,評論bos不會更新以顯示此內容。

在這裏你的幫助將非常感激...

讓我知道如果你需要更多的信息。預先感謝任何人希望幫助我...

回答

1

固定!

我改變了腳本顯示getEffectiveUser而不是getActiveUser和嘿presto它的作品!

:-)

1

我使用相同的功能,它完全爲我工作(我總是檢索用戶名)。您可能會遇到問題,因爲您的電子表格可供匿名用戶使用。

如果有人覆蓋單元格,更新評論是正常的,您可以做的是檢索先前的評論並將其與新評論相加。這裏是我的代碼:

function onEdit(event) 
{ 
    var r = event.source.getActiveRange(); 
    var comment = r.getComment().replace("Last modified by: ","previously modified by"); 
    r.setComment("Last modified by: " +Session.getActiveUser().getEmail()+" on: "+(new Date())+comment); 
} 
+0

嗯......怪 我喜歡你的腳本,它的偉大... 紙張已經只有2個其他用戶共享,並設置爲私有所以不知道爲什麼它不是不顯示編輯過的用戶...... 有什麼想法? – bh06als 2013-03-22 14:47:47

+0

我相信我明白了這個問題,您試圖與位於不同域中的用戶共享(它似乎只在同一個域中工作 - 我沒有嘗試過使用免費的Gmail電子郵件地址)。對不起,但我不知道如何讓它在不同的域中工作。 – Harold 2013-03-23 17:02:14

相關問題