別スプシの最終行の値を転記する
このGASのスクリプトは指定した別ファイルのスプレッドシートから最終行の値を取得し、スクリプトが実行されたシートの最終行の次の行にその値を転記します。
function copyLastRowValue() {
// 別ファイルのスプレッドシートのIDを指定します
var spreadsheetId = "1UXB-TB71EZQxg_X_jamh9ZZzgLrSrKGXFFjiyrQsCfs";
// 別ファイルのスプレッドシートを開きます
var spreadsheet = SpreadsheetApp.openById(spreadsheetId);
// 別ファイルのシート名を指定します
var sheetName = "シート1"; // シート名を適切な名前に変更してください
// 別ファイルの指定したシートを取得します
var sheet = spreadsheet.getSheetByName(sheetName);
if (sheet) {
// 別ファイルの最終行の値を取得します
var lastRow = sheet.getLastRow();
var lastRowValue = sheet.getRange(lastRow, 1).getValue();
// スクリプトが実行されたシートをアクティブなシートとして取得します
var activeSheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// アクティブシートの最終行に値を転記します
var activeSheetLastRow = activeSheet.getLastRow();
activeSheet.getRange(activeSheetLastRow + 1, 1).setValue(lastRowValue);
} else {
Logger.log("指定したシートが見つかりませんでした。");
}
}
解説
copyLastRowValue
関数が定義されています。spreadsheetId
変数には、別ファイルのスプレッドシートのIDが指定されています。このIDは、スプレッドシートのURLから取得できます。SpreadsheetApp.openById(spreadsheetId)
を使用して、指定したスプレッドシートを開きます。spreadsheet
変数には、開いたスプレッドシートのオブジェクトが格納されます。sheetName
変数には、別ファイルのシート名が指定されています。この名前は、スプレッドシート内のシートのタブに表示される名前です。適切なシート名に変更してください。spreadsheet.getSheetByName(sheetName)
を使用して、指定したシートを取得します。取得したシートオブジェクトは、sheet
変数に格納されます。if (sheet)
を使用して、シートが存在するかどうかをチェックします。存在する場合は、以下の処理が実行されます。存在しない場合は、”指定したシートが見つかりませんでした。”というメッセージがログに出力されます。sheet.getLastRow()
を使用して、取得したシートの最終行の行番号を取得します。lastRow
変数に格納されます。sheet.getRange(lastRow, 1).getValue()
を使用して、最終行の1列目のセルの値を取得します。lastRowValue
変数に格納されます。SpreadsheetApp.getActiveSpreadsheet().getActiveSheet()
を使用して、スクリプトが実行されたシートをアクティブなシートとして取得します。activeSheet
変数に格納されます。activeSheet.getLastRow()
を使用して、アクティブシートの最終行の行番号を取得します。activeSheetLastRow
変数に格納されます。activeSheet.getRange(activeSheetLastRow + 1, 1).setValue(lastRowValue)
を使用して、アクティブシートの最終行の次の行の1列目のセルに最終行の値を転記します。setValue()
メソッドを使用してセルに値を設定します。
コメント