代码之家  ›  专栏  ›  技术社区  ›  Anonymous

每个合作者的文本颜色不同

  •  2
  • Anonymous  · 技术社区  · 9 年前

    在工作中,我们使用谷歌电子表格进行相互交流。每个人都有自己的文本颜色,可以在文档中使用。

    但每个人都忘记自定义文本颜色。由于每次我们想在Google Spreadsheeds中工作时都不方便选择文本颜色,因此我们有了使用Google脚本编辑器自动实现这一点的想法。

    function setFontColor(range, fontc) {
       var ss = SpreadsheetApp.getActiveSpreadsheet();
       var sheet = ss.getSheets()[0];
       var cell = sheet.getRange(range);
       cell.setFontColor(fontc);
     }
    
    function onEdit() {
    
      var email = Session.getActiveUser().getEmail();
    
      if (email == "user1@company.com"){
        setFontColor(".getActiveCell()", "#FF8800");
      }
    
      if (email == "user2@company.com"){
        setFontColor(".getActiveCell()", "#0099CC");
      }
    
      if (email == "user3@company.com"){
        setFontColor(".getActiveCell()", "#9933CC");
      }
    
      if (email == "user4@company.com"){
        setFontColor(".getActiveCell()", "#CC0000");
      }
    
    }
    

    我想出了这个剧本,因为我找不到其他东西。不幸的是,这不起作用。有人可以帮助我使其工作或给我一个现有脚本的链接吗?

    这真的会帮助我!还有可能分配给其他人。

    2 回复  |  直到 9 年前
        1
  •  1
  •   KRR    9 年前

    提供的代码中有一些语法错误。尝试更改此方式并运行代码:

    function onOpen() {
    
      var email = Session.getActiveUser().getEmail();
    
      if (email == "user1@company.com"){
        setFontcolor("#FF8800");
      }
    
      if (email == "user2@company.com"){
        setFontcolor("#0099CC");
      }
    }
    

    此外,还必须获得要更改颜色的值范围,然后使用setFontcolor()方法。您可以参考本页了解更多信息: https://developers.google.com/apps-script/reference/spreadsheet/range#setFontColor(String) 希望这有帮助!

        2
  •  1
  •   Anonymous    9 年前

    我找到了解决方案,并想将其分享给任何可能认为它会有用的人!

      function onEdit() {
    
      var ActiveSheet = SpreadsheetApp.getActiveSheet();
      var ActiveRow = ActiveSheet.getActiveRange().getRow();
      var ActiveCell = ActiveSheet.getActiveCell();
      var email = Session.getActiveUser().getEmail();
    
      if (email == "user1@company.com"){
        ActiveCell.setFontColor("#FF8800");
      }
    
      if (email == "user2@company.com"){
        ActiveCell.setFontColor("#0099CC");
      }
    
      if (email == "user3@company.com"){
        ActiveCell.setFontColor("#9933CC");
      }
    
      if (email == "user4@company.com"){
        ActiveCell.setFontColor("#CC0000");
      }
    }