2017-03-23 14 views
0

セルに値(プロジェクトURN)を入力してスクリプトを実行してテンプレートをシートとして保存し、名前を変更するGoogleシートテンプレートを作成しようとしています。プロジェクトのURNと連携します。セルの値から名前を変更するスクリプトを使用してテンプレートGoogleシートを作成する

私はここにhttps://docs.google.com/spreadsheets/d/1IPpQyYHl_TtNa1lGpmu4dlzwTFjOotV2OcnxFT84iUk/edit?usp=sharing

をテストGoogleスプレッドシートを作成した。このシートは、次のスクリプトを持っていますが、私は名前変更機能が正しく動作するために取得傾けます。

function saveAsSpreadsheet(){ 

    var sheet = SpreadsheetApp.getActiveSpreadsheet(); 
    var destFolder = DriveApp.getFolderById("0B7RrbZuJGLlha3NvM3ZqcTY3MDA"); 

    DriveApp.getFileById(sheet.getId()) 
    .(makeCopy(values = SpreadsheetApp.getActiveSheet() 
    .getRange(2, 2).getValues()), destFolder); 
} //END function saveAsSpreadsheet 

私は次の記事も見つけましたが、それを私の使用に向けることはできませんでした。しかし秘密はどこかにあるはずです!あなたはほとんどそれを持ってRename worksheet to cell value keeping format

子猫

+0

makeCopyの前に括弧を入れてはいけません。あなたは '(makeCopy')を持っています。いくつかの変数を追加することでその長いチェーンを分割しなければなりません。それはデバッグに適しています。 –

答えて

0

。これを試してください:

function myFunction() { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); // Get spreadsheet 
    var id = ss.getId(); // Get spreadsheet ID 
    var sstocopy = DriveApp.getFileById(id); //Get spreadsheet with DriveApp 
    var sheet = ss.getActiveSheet(); // Grab the sheet in order to find the name of the new spreadsheet to be created 
    var sheet_name = sheet.getRange("A1").getValue(); // Get the value, in this case: Project Urn 
    var folder = DriveApp.getFolderById("XXXX"); // Get the folder where the sheet needs to be placed. 
    sstocopy.makeCopy(sheet_name,folder); // Make the copy of the sheet in that folder. 
} 

質問がある場合はお知らせください。

関連する問題