onEditのeventで取得できるオブジェクト
GASの特定のイベント発生で動くシンプルトリガー
一部例
function onEdit(e) {
//evant(e)からアクティブシートを取得
var sheet = e.source.getActiveSheet();
console.log('evant(e)からアクティブシート名を取得 =', e.source.getSheetName())
console.log('シート名 =', sheet.getName())
console.log('変更範囲 =', e.range)
console.log('編集されたセルの行数を取得 =', e.range.getRow())
console.log('編集されたセルの列数を取得 =', e.range.getColumn())
console.log('変更範囲(開始行) =', e.range.rowStart)
console.log('変更範囲(終了行) =', e.range.rowEnd)
console.log('変更範囲(開始列) =', e.range.columnStart)
console.log('変更範囲(終了列) =', e.range.columnEnd)
console.log('変更前の値 =', e.oldValue)
console.log('変更後の値 =', e.value)
console.log('変更後の値 =',e.range.getValue())
console.log(' セル位置を取得 =', e.source.getActiveRange().getA1Notation())
}
function onEdit(e) {
//対象にしたいシート名を入力
var sheetN = 'シート1';
var v_value = 'テストです。';
//指定したいセル(A1など)を入力
var range_1 = 'B3';
var range_2 = 'K3';
var hidden_field_start = 10; // 何行目から消すのか
var hidden_field_end = 20; // 何行目まで消すのか
//evant(e)からアクティブシート名を取得
var sheetName = e.source.getSheetName();
var cellPosition = e.source.getActiveRange().getA1Notation();
//編集されたシート名と対象にしたいシート名が一致したら実行
if(sheetName === sheetN){
if(cellPosition == range_1 || cellPosition == range_2){
var copyRange = e.source.getActiveSheet().getRange("E"+ hidden_field_start + ":E" + hidden_field_end); //セル範囲(E29:E69)を取得
if(cellPosition == range_1){
var mergeRange = e.source.getActiveSheet().getRange("F"+ hidden_field_start + ":F" + hidden_field_end); //セル範囲(F29:F69)を取得
}
if(cellPosition == range_2){
var mergeRange = e.source.getActiveSheet().getRange("N"+ hidden_field_start + ":N" + hidden_field_end); //セル範囲(F29:F69)を取得
}
if(e.range.getValue()){
// セール結合 水平方向
// mergeRange.mergeVertically();
// セール結合 垂直方向
mergeRange.mergeVertically();
mergeRange.setValue(v_value).setVerticalText(true).setVerticalAlignment("middle").setHorizontalAlignments("center");
// mergeRange.setBackground("#ffff00"); //セル範囲(D2:D21)の背景色をセル範囲(F2:F21)に適用
}
else{
// セール解除
mergeRange.breakApart();
// 値削除
mergeRange.setValue('');
copyRange.copyTo(mergeRange);
}
}
}
}
コメント