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

【GAS】特定のセルの値を転記する

GAS

別のシートの特定セルの値をアクティブシートへ転記する

アクティブシートと別のスプレットシートを開いておき、別のスプレットシートからアクティブシートへ特定のセルの値を転記するGASのコードです。

function transferCellValue() {
  var activeSpreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  var activeSheet = activeSpreadsheet.getActiveSheet();
  
  // 別のスプレッドシートを開く
  var otherSpreadsheetId = "別のスプレットシートのID";
  var otherSpreadsheet = SpreadsheetApp.openById(otherSpreadsheetId);
  
var sheets = otherSpreadsheet.getSheets();
for (var i = 0; i < sheets.length; i++) {
  Logger.log(sheets[i].getName());
}

  // 別のスプレットシートのシート1のB2の値を取得してアクティブシートのB3に転記する
  var otherSheet = otherSpreadsheet.getSheetByName("シート1");
  var cellValue = otherSheet.getRange("B2").getValue();
  activeSheet.getRange("B3").setValue(cellValue);
}

解説

  1. transferCellValue 関数が定義されています。この関数は、特定のセルの値を転記する処理を行います。
  2. var activeSpreadsheet = SpreadsheetApp.getActiveSpreadsheet(); によって、現在アクティブなスプレッドシートオブジェクトを取得しています。
  3. var activeSheet = activeSpreadsheet.getActiveSheet(); によって、アクティブなスプレッドシート内のアクティブなシート(現在表示されているシート)オブジェクトを取得しています。
  4. var otherSpreadsheetId = "11OH0437QP_5qEvyZiQXi5uOf_g16BMcAA200UG0k1kI"; によって、別のスプレッドシートのIDを指定しています。このIDは、別のスプレッドシートのURLから取得できます。
  5. var otherSpreadsheet = SpreadsheetApp.openById(otherSpreadsheetId); によって、指定したIDを持つ別のスプレッドシートを開いています。SpreadsheetApp.openById() メソッドは、指定したIDに基づいてスプレッドシートオブジェクトを取得します。
  6. var sheets = otherSpreadsheet.getSheets(); によって、別のスプレッドシート内のすべてのシートオブジェクトを配列として取得しています。これにより、別のスプレッドシート内のシートにアクセスできます。
  7. for ループを使用して、sheets 配列内の各シートの名前をログに出力しています。これにより、別のスプレッドシート内のシート名を確認できます。
  8. var otherSheet = otherSpreadsheet.getSheetByName("シート1"); によって、別のスプレッドシート内の特定のシート(この場合は “シート1″)オブジェクトを取得しています。
  9. var cellValue = otherSheet.getRange("B2").getValue(); によって、別のシート内のセル “B2” の値を取得しています。
  10. activeSheet.getRange("B3").setValue(cellValue); によって、アクティブなスプレッドシートのアクティブなシートのセル “B3” に、取得したセルの値を転記しています。

コメント

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