google スプレッドシートでシート「1」「2」「3」〜「31」(シート名は日付です)の特定範囲の内容をそのまま別シートに集計表示したいです。
まずimportrangeで表示をさせようと考えたのですが、結合しているセルや書式の変更が反映されず断念しました。
次に google apps script を使って onChange をトリガーに、シートの該当範囲が編集されたら集計用の別シートにコピペを実行するという形をとりましたが、onChange だとテキスト入力したり結合した場合はトリガーが発動するのですが、背景色を変更してもトリガーが発動しません。
onEdit でも思うように発動してくれませんでした。
背景色を変更してもトリガー発動できるようにしたいのですが実現可能でしょうか?
2018/8/1 17:10 追記
具体的なコードは以下になります。
function onChange() {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheet.getActiveSheet();
var sheet_day = spreadsheet.getActiveSheet().getName();
var cell = sheet.getActiveCell();
var col = cell.getColumn();
var row = cell.getRow();
if(sheet_day >= 1 && sheet_day <=31){
if(col >= 4 && col <=31){
if(row >= 55 && row <=58){
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Aさん'), true);
var sheet_supplier = spreadsheet.getActiveSheet();
sheet_supplier.getRange(sheet_day*4,4,4,28).activate();
var day = spreadsheet.getSheetByName(sheet_day);
day.getRange(55,4,4,28).copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_NORMAL, false);
SpreadsheetApp.setActiveSheet(day);
}}
}}
回答1件
あなたの回答
tips
プレビュー