Googleスプレッドシートで特定の行を編集して特定のユーザーがアクセスでき、他のユーザーがアクセスできない方法はありますか?Googleスプレッド:特定のユーザーに異なる行を表示する
私は、70人ほどの人々が自分のデータにアクセスし、自分に割り当てられた行にデータを入力する必要があるスプレッドシートを持っています。以前は、誰かの行を編集できないように各行を保護しましたが、他のすべての行を非表示にするのが理想的です。スプレッドシートの例here。
現時点では、スプレッドシートにアクセスするユーザーのメールアドレスに応じて、特定の行を非表示にするためにスクリプトを使用しようとしました。ただし、これは現在、スプレッドシートを見ているすべてのユーザーの視点に影響します。私のコードは:
function onOpen(e){
var email = (Session.getEffectiveUser().getEmail());
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
switch (email){
case '[email protected]':
sheet.hideRows(7, sheet.getMaxRows()-6);
break;
case '[email protected]':
sheet.hideRows(2, 5);
sheet.showRows(7, 5);
sheet.hideRows(12, sheet.getMaxRows()-11);
break;
case '[email protected]':
sheet.hideRows(2, 10);
sheet.showRows(12, 5);
sheet.hideRows(17, sheet.getMaxRows()-16);
break;
...などです。
私の質問です:グローバルではなくビューア固有のビューを作成する方法はありますか?または、私は各行を通過し、このスプレッドシートを生成する必要があるたびに保護機能を使用することになりますか?
残念ながら、このスプレッドシートのデータは、計画が洗練されるにつれて頻繁に変更されます。フォームの回答を編集できますが、最新の変更を確認する必要があります。また、フォームを使用して、数百の電子メールを保存するためのチーム間の(コメントを使用した)対話として渡されます。 – ViruneeV