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

【GAS】特定フォルダの複数データをアクティブシートに転記する

【GAS】特定フォルダにあるスプシの複数データをアクティブシートに転記する GAS

複数データを転記する

指定されたフォルダとスプレッドシートからデータをコピーし、指定されたシートとセルに転記するGASのスクリプトです。

function copyData() {
  // フォルダID、スプレッドシートID、シート名、転記元のセル範囲、転記先のセル範囲を設定
  var folderId = "XXXXXXXXXXXXXXXXXXXX";
  var spreadsheetId = "XXXXXXXXXXXXXXXXXXXX";
  var sheetName = "Sheet1";
  var sourceRange = "B2:B6";
  var destinationCell = "C2";
  
  // フォルダとスプレッドシートを取得
  var folder = DriveApp.getFolderById(folderId);
  var file = DriveApp.getFileById(spreadsheetId);
  var sheet = file.getSheetByName(sheetName);
  
  // データのコピー
  var sourceValues = sheet.getRange(sourceRange).getValues();
  var destinationRange = sheet.getRange(destinationCell + ":" + destinationCell).offset(0, sourceValues[0].length - 1);
  destinationRange.setValues(sourceValues);
  
  // アクティブシートに完了メッセージを表示
  SpreadsheetApp.getActive().toast('データを転記しました', '完了', 5);
}

解説

  1. copyData() 関数: メインの関数であり、データの転記と完了メッセージの表示を行います。
  2. 変数の設定:
    • folderId: データをコピーするフォルダのIDを指定します。
    • spreadsheetId: データをコピーするスプレッドシートのIDを指定します。
    • sheetName: データを転記するシートの名前を指定します。
    • sourceRange: 転記元のデータの範囲を指定します。例では、B2からB6までのセルを指定しています。
    • destinationCell: 転記先の最初のセルを指定します。例では、C2を指定しています。
  3. フォルダとスプレッドシートの取得:
    • DriveApp.getFolderById(folderId): 指定されたフォルダIDを使用して、フォルダを取得します。
    • DriveApp.getFileById(spreadsheetId): 指定されたスプレッドシートIDを使用して、スプレッドシートを取得します。
    • file.getSheetByName(sheetName): 取得したスプレッドシートから指定された名前のシートを取得します。
  4. データのコピー:
    • sheet.getRange(sourceRange).getValues(): 転記元の範囲からデータを取得し、sourceValues に代入します。
    • sheet.getRange(destinationCell + ":" + destinationCell): 転記先の範囲を取得します。例では、C2からデータの幅に応じた範囲を取得しています。
    • destinationRange.setValues(sourceValues): sourceValues の値を転記先の範囲に設定します。
  5. 完了メッセージの表示:
    • SpreadsheetApp.getActive().toast('データを転記しました', '完了', 5): アクティブなスプレッドシートに対して、指定されたメッセージを表示します。メッセージは「データを転記しました」というテキストで、5秒間表示されます。

このコードは、Google Apps Script を使用して Google スプレッドシートのデータを操作する方法の一例です。指定されたフォルダとスプレッドシートのID、シート名、範囲に応じて、データの転記が行われます。また、転記が完了した際には完了メッセージが表示されます。

コメント

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