どーも!今日はGoogle Apps Script(GAS)の getFontFamilies()
メソッドについて話すけん、スプレッドシートのフォント情報を効率的に取得したいなら最後まで読んでいきんしゃい!
getFontFamilies() とは?
GASの getFontFamilies()
は、指定範囲のセルに設定されているフォントファミリーを一括取得できるメソッドじゃ。このメソッドを使えば、手作業でチェックせんでも、一瞬でフォントの情報を取得できるけん、便利な機能たい。
基本的な使い方
まず、どんな風に書くのか見てみるばい。
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange("B2:D4");
const fontData = range.getFontFamilies();
fontData.forEach((row, rowIndex) => {
row.forEach((font, colIndex) => {
Logger.log(`セル ${String.fromCharCode(66 + colIndex)}${2 + rowIndex}: ${font}`);
});
});
このスクリプトは B2:D4
の範囲内のフォントを取得してログに出力するっちゃ。
応用テクニック
フォントの異常検出
function detectUnusualFonts() {
const sheet = SpreadsheetApp.getActiveSheet();
const dataRange = sheet.getDataRange();
const fonts = dataRange.getFontFamilies();
const standardFont = 'Arial';
const anomalies = [];
fonts.forEach((row, r) => {
row.forEach((font, c) => {
if(font !== standardFont) {
anomalies.push(`R${r+1}C${c+1}: ${font}`);
}
});
});
if(anomalies.length > 0) {
Logger.log(`フォントの異常検出!\n${anomalies.join('\n')}`);
}
}
標準フォント(Arial)と違うフォントが使われとるセルをリストアップするスクリプトばい。
フォント使用頻度のレポート作成
function generateFontReport() {
const sheet = SpreadsheetApp.getActiveSheet();
const fonts = sheet.getDataRange().getFontFamilies();
const fontStats = {};
fonts.flat().forEach(font => {
fontStats[font] = (fontStats[font] || 0) + 1;
});
const reportSheet = SpreadsheetApp.getActive().insertSheet('Font Report');
reportSheet.getRange('A1:B1').setValues([['Font Family', 'Count']]);
const sortedData = Object.entries(fontStats)
.sort((a, b) => b[1] - a[1])
.map(([font, count]) => [font, count]);
reportSheet.getRange(2, 1, sortedData.length, 2)
.setValues(sortedData)
.setFontFamily('Consolas');
}
スプレッドシート内で使われてるフォントをカウントして、レポートを自動生成する関数たい。
気をつけるポイント
- 未設定のセルはデフォルトのフォント(通常はArial)が返される
- フォント名はOSや環境によって異なることがある
- データ量が大きいと処理時間が長くなるので、範囲を絞ると良い
まとめ
GASの getFontFamilies()
メソッドを活用すると、スプレッドシートのフォント情報を一括取得できるばい。異常フォントの検出やレポート作成にも応用できるけん、作業効率をアップさせるツールとして活用してみんしゃい!

Class Range | Apps Script | Google for Developers

【GAS】スプレッドシートのフォント機能まとめ【サンプルソース付】
GAS開発者向けにスプレッドシートのフォント機能をすべてまとめました。セルのデータを扱う時、フォントの色を変更したり、お気に入りの字体に変えたり、自由自在にオシャレに装飾できると素敵ですね。色、字体、太字、斜体、下線、サイズ設定と取得です。

【GAS】Googleドキュメントで Noto Sans JP などの日本語Google Fontsを使う - Qiita
Google Docsは共同編集が非常に便利なツールです。 しかし美しい・きれいなフォントが少ない、と感じたことはありませんか? ググってみると、ブラウザの設定から表示されるフォントを変える方法は出てくるのですが、それだと印刷時やPDF書き...
コメント