みんな、Googleスプレッドシートの装飾情報をプログラムで取得したいことってないかい?たとえば、どのセルに下線や取り消し線が付いてるかをチェックしたい時、手作業じゃ面倒だよね?
そこで登場するのがGAS(Google Apps Script)の getFontLines()
メソッドばい!このメソッドを使えば、セル範囲のフォント装飾をプログラムで取得できるっちゃ。
getFontLines() ってなんね?
GASでスプレッドシートのフォント装飾(下線・取り消し線)を取得するためのメソッドじゃ!使い方はシンプルで、Range
オブジェクトに対して呼び出せば、各セルの装飾情報を配列で返してくれるんよ。
書き方はこんな感じばい!
const fontLines = range.getFontLines();
これで、range
内のセル装飾情報が二次元配列で返ってくるばい。
どんなデータが返ってくると?
getFontLines()
の戻り値は、セルの装飾状態を示す文字列の二次元配列ばい。
'underline'
: 下線付き'line-through'
: 取り消し線付き'none'
: 装飾なし
例えば、こんな表があるとするばい!
+------------+------------+
| A1 | B1 |
| underline | none |
+------------+------------+
| A2 | B2 |
| line-through | underline |
+------------+------------+
| A3 | B3 |
| none | line-through |
+------------+------------+
この場合、getFontLines()
を実行すると、こういう配列が返ってくるばい。
[
['underline', 'none'],
['line-through', 'underline'],
['none', 'line-through']
]
つまり、セルの装飾状態をそのまま配列として取得できるっちゃ。
実際のコード例を見てみるばい!
1. フォント装飾を取得してコンソールに表示する
function fetchFontDecorations() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheetByName('SalesData');
const targetRange = sheet.getRange('B2:D10');
const decorationMatrix = targetRange.getFontLines();
decorationMatrix.forEach((row, rowIndex) => {
row.forEach((cellStyle, colIndex) => {
console.log(`Cell ${rowIndex+2}-${colIndex+2}: ${cellStyle}`);
});
});
}
このコードを実行すると、セルごとの装飾状態がコンソールに表示されるばい!
2. 取り消し線がついたセルにコメントを追加する
function processSpecialDecorations() {
const range = SpreadsheetApp.getActiveRange();
const decorations = range.getFontLines();
decorations.forEach((row, i) => {
row.forEach((style, j) => {
if(style === 'line-through') {
const cell = range.getCell(i+1, j+1);
const comment = cell.getNote();
cell.setNote(`${comment}\nCanceled at: ${new Date()}`);
}
});
});
}
このスクリプトを実行すると、取り消し線が付いたセルに「キャンセル日時」を自動で追記できるっちゃ!
こんな場面で使えるばい!
- タスク管理: 取り消し線が入ったタスクを自動でログに記録
- データ検証: 下線が入ったセルの値が正しいかチェック
- 履歴管理: フォント装飾の変更を監視して、変更ログを残す
まとめ
getFontLines()
を使えば、Googleスプレッドシート内のフォント装飾を簡単に取得できるばい!
「下線付きのセルだけ抽出したい!」「取り消し線が付いたデータをログに残したい!」っていう時に超便利け!GASを活用して、作業を効率化していこうばい!

Class Range | Apps Script | Google for Developers

[GAS]フォントやフォントの色・線・斜体などを取得・設定する方法 -Rangeクラス-|テックアップライフ
Google Apps Script (GAS) でこのセル範囲のフォントや、色・線・斜体などのフォント関連の設定を取得
セル範囲の文字装飾(取り消し線、下線)をセルごとに取得する:getFontLines()【GAS】 | G Suite ガイド - G Suite ガイド:G Suite の導入方法や使い方を徹底解説!
getFontLines() セル範囲の文字装飾(取り消し線、下線)をセルごとに取得する。 サンプルコード // 現在アクティブなスプレッドシートを取得 var ss = SpreadsheetApp.getActiveSpreadshee...
コメント