抽出データのみ新規シートに貼り付ける
これは、アクティブなスプレットシートの中の表に対してフィルタをかけ、A列に「JAL」の文言を含む行のみを抽出し、新しいシートにコピーして貼り付けるスクリプトです。
このスクリプトを実行すると、アクティブなスプレットシートの中の表にフィルタがかかり、A列に「JAL」の文言を含む行のみが新しいシートにコピーされます。
function filterAndCopy() {
// 操作するスプレッドシートとシートを取得する
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var activeSheet = spreadsheet.getActiveSheet();
// フィルタをかける対象の範囲を指定する
var rangeToFilter = activeSheet.getDataRange();
// フィルタを設定する
rangeToFilter.createFilter();
// A列に「JAL」を含むフィルタを設定する
var filterCriteria = SpreadsheetApp.newFilterCriteria().whenTextContains("JAL").build();
rangeToFilter.getFilter().setColumnFilterCriteria(1, filterCriteria);
// フィルタ結果を取得する
var filteredRange = rangeToFilter.getFilter().getRange();
// 新しいシートを作成する
var newSheet = spreadsheet.insertSheet();
// 抽出した表のみをコピーして貼り付ける
filteredRange.copyTo(newSheet.getRange("A1"), SpreadsheetApp.CopyPasteType.PASTE_NORMAL);
}
解説
- スプレッドシートとアクティブなシートを取得します。
- フィルタをかける対象の範囲を指定します。
- フィルタを設定します。
- A列に「JAL」を含むフィルタを設定します。
- フィルタ結果を取得します。
- 新しいシートを作成します。
- 抽出した表のみをコピーして新しいシートに貼り付けます。
コメント