前回取得したデータを出力する
前回までのコード
function recipeListCreation() { /*--------------------------------------------------------------------------*/ // Googleドライブの指定フォルダ(らーめん妄想屋レシピフォルダ)内から情報を取得する /*--------------------------------------------------------------------------*/ // GoogleドライブのフォルダId(マイドライブ→レシピ管理→らーめん妄想屋レシピ) const folderId = '1uOYBO45AP8FVz3AX2D5XSXZHIiTfJ2nX'; // Googleドライブ内のフォルダ情報を保持しておく配列 const filesInDriveArray = []; // Googleドライブのフォルダ内のすべてのファイル情報を取得 const files = DriveApp.getFolderById(folderId).getFiles(); // ドライブ内のファイル配列(filesInDriveArray)にデータを入れる while(files.hasNext()) { var file = files.next(); filesInDriveArray.push([file.getName(),file.getId(),file.getUrl()]); } //console.log(filesInDriveArray); /*--------------------------------------------------------------------------*/ // スプレッドシート内の情報を取得する /*--------------------------------------------------------------------------*/ // Googleドライブ内のらーめん妄想屋レシピフォルダ内のスプレッドシート数 const driveArraryLen = filesInDriveArray.length; //console.log("スプレッドシート数:" + driveArraryLen); // レシピ一覧に出力する情報を保持しておく配列 const recipeListDataArray = []; // filesInDriveArrayに入っているIdをキーにしてスプレッドシートを開く for (var i=0; i<driveArraryLen; i++) { var nowOpenSpreadSheet = SpreadsheetApp.openById(filesInDriveArray[i][1]); var nowOpenSheetLen = nowOpenSpreadSheet.getSheets().length; //console.log("今開いているスプレッドシートの名前:" + nowOpenSpreadSheet.getName()); //console.log("今開いているスプレッドシートのID:" + nowOpenSpreadSheet.getId()); //console.log("今開いているスプレッドシート内のシート数:" + nowOpenSheetLen); // スプレッドシートのシートをアクティブにしてレシピ名や売値などを取得する。 for (var j=0; j<nowOpenSheetLen; j++) { // シートをアクティブにする var activeSheet = nowOpenSpreadSheet.getSheets()[j]; //console.log("activeSheet名:" + activeSheet.getName()); // データ取得セルを指定する var range1 = activeSheet.getRange("B2"); // レシピ名("B2") var range2 = activeSheet.getRange("K2"); // レシピコード("K2") var range3 = activeSheet.getRange("J5"); // 売値("J5") var range4 = activeSheet.getRange("K5"); // 原価/単位("K5") var range5 = activeSheet.getRange("L5"); // 原価率("L5") var range6 = activeSheet.getRange("J8"); // 店舗名("J8") var range7 = activeSheet.getRange("J11"); // 店舗コード("J11") var range8 = activeSheet.getRange("L8"); // ジャンル("L8") var range9 = activeSheet.getRange("K11"); // ジャンルコード("K11") var range10 = activeSheet.getRange("L11"); // 製品コード("L11") var range11 = activeSheet.getRange("J14"); // 上がり量("J14") var range12 = activeSheet.getRange("K14"); // 単位("K14") // データを取得する var value1 = range1.getValue(); var value2 = range2.getValue(); var value3 = range3.getValue(); var value4 = range4.getValue(); var value5 = range5.getValue(); var value6 = range6.getValue(); var value7 = range7.getValue(); var value8 = range8.getValue(); var value9 = range9.getValue(); var value10 = range10.getValue(); var value11 = range11.getValue(); var value12 = range12.getValue(); //console.log("【第11】回レシピ名:" + value1); //console.log("【第11】回レシピコード:" + value2); // レシピ一覧に出力する情報を保持しておく配列にデータを入れる recipeListDataArray.push( [value1,value2,value3,value4,value5,value6, value7,value8,value9,value10,value11,value12] ); } } //console.log("【第11】回レシピ一覧に出力する情報:" + recipeListDataArray[0]); //console.log("【第11】回レシピ一覧に出力する情報:" + recipeListDataArray[1]); //console.log("【第11】回レシピ一覧に出力する情報:" + recipeListDataArray[0][0]); //console.log("【第11】回レシピ一覧に出力する情報:" + recipeListDataArray[1][0]); // ここに追加 }
配列データを出力する
/*--------------------------------------------------------------------------*/ // シート内の情報を出力する /*--------------------------------------------------------------------------*/ // スプレッドシート[レシピデータ]のId const recipeListId = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; // 出力先シート名 const destinationSheetName = 'レシピ一覧'; // 出力先シート(レシピ一覧)をアクティブにする var activeSheet = SpreadsheetApp.openById(recipeListId).getSheetByName(destinationSheetName); // シートに出力する activeSheet.getRange(2,1,recipeListDataArray.length,recipeListDataArray[0].length).setValues(recipeListDataArray);
出力出来ました!
が、レシピコードがの頭のゼロがないです
原価率とかも表示がおかしいです。
セルを全選択して123▼→書式なしテキストをクリック
B列、G列、I列、J列にちゃんと頭の0が表示されました。
C列、D列は¥にして、C列は小数点以下を消す
E列は%表示
あとは見やすくして完成
99半製品も変更
レシピデータスプレッドシート→99半製品シートをちょっと便利に
=IFERROR(FILTER('レシピ一覧'!$A$2:$A$1000, 'レシピ一覧'!$I$2:$I$1000="99", 'レシピ一覧'!$J$2:$J$1000=A2), "")
コメント