0

getUserLoginId()は私には機能しますが、共同編集者には機能しません。私たち全員に編集権限があります。私たちは皆Gmailアカウントを持っており、そのようにログインします。次の関数は、onEditトリガーとしてインストールされます。どうしたの?私はこのリンクを見ました:グーグルスクリプト:getUser()が機能していません。これは関連する問題があるようです。そこでは、「APIへのログイン」について話します。それで私はその道をたどった。真剣に?誰が共有スプレッドシートを編集しているかを確認するための認証?それが実際に救いへの道であるならば、誰かがそのような仕事を実行するために書かれたコードを持っていますか?それとも、スプレッドシートを変更することを許可した共同編集者の名前、つまり実際にスプレッドシートを変更している人の名前を見つけるために、もう1週間以上頭を叩く運命にありますか?

function happyFunTime() {
      var s = SpreadsheetApp.getActiveSheet();
      var r = s.getActiveCell();
      var timeLastCalledColumnOffset = getTimeLastCalledColumnOffset();

      timeLastCalledColumnOffset++;

        var dateCell = s.getRange(r.getRow(), timeLastCalledColumnOffset);
        var targetSheetName=setRowColor(i);
        var user=Session.getActiveUser().getUserLoginId();
        var comment="Last Edited By: " + user;
        dateCell.setComment(comment);

      }
4

1 に答える 1

0

Session.getActiveUser()は、特定のドメイン内のユーザーに対してのみ機能します。または、スクリプトがWebアプリとしてデプロイされ、アプリを実行しているユーザーとして実行するように設定されている場合。

あなたの場合、どちらも真実ではありません。だから、私は恐れています、あなたは運が悪いです。

于 2012-11-25T09:43:07.207 に答える