GASでスプレッドシートでセル結合を解除するには「breakApart()
」を利用する。
breakApart()
範囲内の複数列のセルを再度個々のセルに分割します。 特定の範囲でこの関数を呼び出すことは、範囲を選択して [形式] -> [結合] -> [結合を解除] をクリックするのと同じです。
https://developers.google.com/apps-script/reference/spreadsheet/range#breakapart
スプレッドシートでセル結合を解除するGAS実行の様子
breakApart()メソッドを利用して、スプレッドシートでセル結合を解除するGASを実行してみました。
breakApart()を実行したことで、指定範囲のセルを解除できることが分かります。
スプレッドシートの範囲をセル結合する場合は、以下記事を御覧ください。
スプレッドシートでセル結合を解除するGAS
function ketugoukaijo(){
//SpreadsheetAppを起動
let ss = SpreadsheetApp.getActiveSpreadsheet();
//0番目のシートを選択
let sht = ss.getSheets()[0];
//シートコンテンツをクリア
sht.clear();
//結合開始セルをstartに格納
const start = Browser.inputBox("結合する開始セルを選択してください");
//結合終了セルをendへ格納
const end = Browser.inputBox("結合する終了セルを選択してください");
//結合セル範囲をrangeへ格納
const range =sht.getRange(start+":"+end);
//range範囲をアクティブに・背景黄色に・セル結合
range
.activate()
.setBackground("yellow")
.merge();
//YESNOでセル結合可否確認
const yesno = Browser.msgBox("セル結合を解除しますか?",Browser.Buttons.YES_NO);
//YESなら
if(yesno == "yes"){
//rangeの背景を白に・■breakApartでセル結合を解除
range
.setBackground('#fff')
.breakApart();
//セル結合解除した旨を掲載
Browser.msgBox("結合セルを解除して背景色もリセットしました");
}else{
//セル結合しなかった旨を掲載
Browser.msgBox("任意のセル範囲を結合しました");
}
}
breakApart()の戻り値
Range - チェーン用の範囲。
スプレッドシートでセル結合を解除するまとめ
GAS×スプレッドシートでセル結合を解除するならbreakApart()
メソッドを利用しましょう。
関連記事:【GAS】スプレッドシートにチェックボックスを挿入する
関連記事:【GAS】スプレッドシートに検証がオン状態のチェックボックスを挿入する