繁体   English   中英

Google 表格:为特定用户显示不同的行

[英]Google Sheets: show different rows for specific users

有没有办法使 Google 电子表格中的某些行可编辑并可被某个用户访问,而不能被其他用户访问?

我有一个电子表格,大约 70 个人需要访问该电子表格并将他们的数据输入到分配给他们的行中。 以前,我只是保护每一行,这样他们就不能编辑其他人的行,但理想情况下,我也想隐藏其他人的行。 示例电子表格在这里

目前,我尝试使用脚本根据访问电子表格的人的电子邮件地址隐藏和显示某些行。 但是,这会影响当前查看电子表格的每个人的视图。 我的代码是:

    function onOpen(e){
        var email = (Session.getEffectiveUser().getEmail());
        var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();

        switch (email){
             case 'user1@email.com':
             sheet.hideRows(7, sheet.getMaxRows()-6);
             break;
        case 'user2@email.com':
             sheet.hideRows(2, 5);
             sheet.showRows(7, 5);
             sheet.hideRows(12, sheet.getMaxRows()-11);
             break;
        case 'user3@email.com':
             sheet.hideRows(2, 10);
             sheet.showRows(12, 5);
             sheet.hideRows(17, sheet.getMaxRows()-16);
             break; 

...等。

我的问题是:有没有办法使这些视图特定于查看器而不是全局视图? 还是我注定要遍历每一行并在每次需要生成此电子表格时使用保护功能?

为什么不使用附在工作表上的表格? 它将防止用户覆盖其他响应,隐藏其他响应。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM