驚くほど簡単!GASでグループ化とその解除方法をマスターしよう
他の社員が作ったスプレッドシートが見辛くて、データをグループ化する方法を教えてもらえないかなぁ…

猫男

catman
それなら、catmanがGASで簡単にできるグループ化とその解除方法を伝授しよう。
GASでスプレッドシートのデータをグループ化する方法
GAS(Google Apps Script)を使えば、スプレッドシートのデータをグループ化できます。
まずは基本を押さえよう。
グループ化の基本
まず、特定の範囲をグループ化するスクリプトを書いてみよう。
function groupRows() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// 行の範囲をグループ化(例えば2から10行目まで)
sheet.groupRows(2, 10);
}
– SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(): 現在アクティブなスプレッドシートのシートを取得する。
– sheet.groupRows(start, end): 指定した行範囲をグループ化するメソッド。
グループ化ってこんなにサクッとできるんだね!でも、間違えちゃったらどうしよう…

猫男
グループ化を解除するには?
大丈夫、GASを使えばグループ化の解除も簡単にできる。以下のスクリプトでグループ化を解除できるぞ。
function ungroupRows() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// グループ化された行の範囲を解除(例えば2から10行目まで)
sheet.ungroupRows(2, 10);
}
– sheet.ungroupRows(start, end): 指定した行範囲のグループ化を解除するメソッド。
なるほど!これで誤ってグループ化しても元に戻せるね。

猫男
列をグループ化する方法
行だけではなく、列のグループ化も同様に可能だ。列をグループ化する方法も見てみよう。
列のグループ化の基本
function groupColumns() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// 列の範囲をグループ化(例えばAからD列)
sheet.groupColumns(1, 4);
}
– sheet.groupColumns(start, end): 指定した列範囲をグループ化するメソッド。
列も同じように簡単にできるんだね!これは使えそう!

猫男
列のグループ化を解除するには?
列をグループ化解除する方法も見ておこう。
function ungroupColumns() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// グループ化された列の範囲を解除(例えばAからD列)
sheet.ungroupColumns(1, 4);
}
– sheet.ungroupColumns(start, end): 指定した列範囲のグループ化を解除するメソッド。
練習問題: グループ化とその解除をマスターしよう
以下の問題を通して、GASでのグループ化を実践してみよう。
- シートの5から15行目をグループ化してみてください。
- シートのBからF列のグループ化を解除してください。
解答と解説
問1の解答
function practiceGroupRows() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// 5から15行目をグループ化
sheet.groupRows(5, 15);
}
問2の解答
function practiceUngroupColumns() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// BからF列のグループ化を解除
sheet.ungroupColumns(2, 6);
}
– practiceGroupRows関数: 5から15行目をグループ化する。
– practiceUngroupColumns関数: BからF列のグループ化を解除する(列番号は1始まりで、Bが2, Fが6)。