2017-02-07 6 views
0

いくつかのデータをコピーして貼り付けるためにスクリプトを使用していますが、数行のユーザーが1行だけの編集権を持っています。他の範囲は編集できません。スクリプトは保護された範囲またはシートを編集できますか?

スクリプトは1枚のシートから別のシートにデータをコピーし、2枚の編集者が何かを編集できることを除いて、両方のシートは完全に保護されています。この同じスクリプトは、このスプレッドシートで誰も作業していない時間ベースのトリガーでトリガーされます。

質問は次のとおりです:スクリプトは保護されたシートまたは範囲を編集できますか?

function CopyDaily() { 
    var ss = SpreadsheetApp.openById('1olKDp').getSheetByName('Produtos vendidos'); //Seleciona a planilha DE ONDE os dados devem ser copiados 
    var sss= SpreadsheetApp.openById('1olKDp').getSheetByName('BD Produtos vendidos'); //Seleciona a planilha PARA ONDE os dados devem ser copiados 
    var LastRow1 = SpreadsheetApp.openById('1olKDp').getSheetByName('BD Produtos vendidos').getLastRow() + 1; 
    var LastRow2 = SpreadsheetApp.openById('1olKDp').getSheetByName('BD Produtos vendidos').getLastRow() + 6; 
    Logger.log(ss.getName()); 
    ss.getRange('A2:S7').copyTo(sss.getRange('A' + LastRow1 + ':S' + LastRow2), {contentsOnly:true}) 
} 

function addTrigger() { 
    var everyDay = ScriptApp.newTrigger("CopyDaily") 
    .timeBased() //Define o tipo da trigger: Baseada em hora. 
    .everyDays(1) //Frequencia de dias: a cada 1 dia. 
    .atHour(12) //Em qual hora: 1 am. 
    .create(); //Cria a trigger baseada nos parametros acima. 
} 

答えて

1

はい、スクリプトが保護された範囲を編集することができ、依存し、どのような重要なのスクリプトを実行する人である:ここでは

は(念のため)コードです。スクリプトを実行している人(アカウント)には、保護された範囲の編集権限が必要です。スクリプトを実行しているアカウントに保護された範囲の編集権限がない場合、コードは例外をスローします。

+0

ありがとうございます、私はサポートページでこれを読んでいますが、最初は私には分かりません。試して、完全に働いた。 –

関連する問題