例文を使って繰り返し業務を時短

【GAS】別スプシの最終列の値を転記する

GAS

別スプシの最終列の値を転記する

このGASのスクリプトは、指定した別ファイルのスプレッドシートから最終列の値を取得し、スクリプトが実行されたシートの最終列の次の列にその値を転記します

function copyLastColumnValue() {
  // 別ファイルのスプレッドシートのIDを指定します
  var spreadsheetId = "スプレットシートのID";

  // 別ファイルのスプレッドシートを開きます
  var spreadsheet = SpreadsheetApp.openById(spreadsheetId);

  // 別ファイルのシート名を指定します
  var sheetName = "シート名"; // シート名を適切な名前に変更してください

  // 別ファイルの指定したシートを取得します
  var sheet = spreadsheet.getSheetByName(sheetName);

  if (sheet) {
    // 別ファイルの最終列の値を取得します
    var lastColumn = sheet.getLastColumn();
    var lastColumnValue = sheet.getRange(1, lastColumn).getValue();

    // スクリプトが実行されたシートをアクティブなシートとして取得します
    var activeSheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();

    // アクティブシートの最終列に値を転記します
    var activeSheetLastColumn = activeSheet.getLastColumn();
    activeSheet.getRange(1, activeSheetLastColumn + 1).setValue(lastColumnValue);
  } else {
    Logger.log("指定シートが無い");
  }
}

解説

  • spreadsheetId変数には、別ファイルのスプレッドシートのIDが指定されています。これは、対象の別ファイルのスプレッドシートを識別するために使用されます。
  • SpreadsheetApp.openById(spreadsheetId)を使用して、指定されたスプレッドシートのIDを持つスプレッドシートを開きます。これにより、spreadsheet変数に対象のスプレッドシートが代入されます。
  • sheetName変数には、別ファイルのシート名が指定されています。このシート名を使って、別ファイルの特定のシートを取得します。
  • spreadsheet.getSheetByName(sheetName)を使用して、指定した名前のシートを取得します。これにより、sheet変数に対象のシートが代入されます。
  • 取得したシートが存在する場合、以下の処理が行われます。
    • a. sheet.getLastColumn()を使用して、シートの最終列のインデックスを取得します。これにより、lastColumn変数に最終列のインデックスが代入されます。
    • b. sheet.getRange(1, lastColumn).getValue()を使用して、最終列の1行目のセルの値を取得します。これにより、lastColumnValue変数に最終列の値が代入されます。
    • c. SpreadsheetApp.getActiveSpreadsheet().getActiveSheet()を使用して、スクリプトが実行されたシートをアクティブなシートとして取得します。これにより、activeSheet変数に実行されたシートが代入されます。
    • d. activeSheet.getLastColumn()を使用して、アクティブシートの最終列のインデックスを取得します。e. activeSheet.getRange(1, activeSheetLastColumn + 1).setValue(lastColumnValue)を使用して、アクティブシートの最終列の次の列に取得した最終列の値を転記します。
  • 取得したシートが存在しない場合、”指定したシートが見つかりませんでした。”というメッセージがログに出力されます。

コメント

タイトルとURLをコピーしました