Officeスクリプトで文字を太字にする方法|基本から応用まで徹底解説

当ページのリンクには広告 (Amazonアソシエイト含む) が含まれています。

「Officeスクリプトで、Excelのセルの文字(フォント)を太字にしたいけど、どう書けばいいの?」
そう思ったことはありませんか?


Officeスクリプトで文字列(フォント)を太字にする方法が知りたい

Excelのセルの文字サイズやフォントを一括で変更したい。

VBAからOfficeスクリプトに移行したけど、書き方が分からない…

この記事では、Officeスクリプトを使って、Excelの文字(フォント)を太字にする方法を、具体的なコード例とともに解説します。


そんなとき、VBAのコードはよく見つかるけど、Officeスクリプトでセルの文字を太字にする方法って、意外と情報が少ないんですよね。
でも実は、Officeスクリプトなら「太字」や「文字サイズの変更」「フォントの設定」もすべてコードで制御可能なんです。

特に便利なのが、Power Automateと連携できることです。
たとえば、毎朝届くデータを自動で整形し、重要な文字を太字にして強調表示するといった作業も、人の手を使わずに自動化できます。

本記事では、OfficeスクリプトでExcelの文字を太字にする具体的な方法をコード例付きで解説します。
ぜひ最後までご覧ください。


【 この記事の概要 】

よく使う度
難しさ
覚えておくと安心度

「Officeスクリプト、いざ始めようと思ったけど、何から手をつけていいのか分からない…」
と悩んでいませんか?

最初の学習で迷うと、やる気も続かなくなってしまいますよね。

そんな方におすすめなのが、
初心者がつまずきやすいポイントをしっかりフォローした入門書です。

  • 基礎から丁寧に解説、初心者でも安心
  • 具体的な実践例つきで現場ですぐに活かせる
  • 手元に置いていつでも確認できる

「動画も良いけど、まずは書籍でじっくり学びたい」という方には、特におすすめです。

目次

この記事を読むとできるようになること

スポンサーリンク

Officeスクリプトで文字を太字にする方法とフォント設定の基本

Officeスクリプトを使えば、Excelのセルに入力された文字(文字列)を簡単に太字に設定できます。
そのために使うのが、setBold(true)というメソッドです。

このメソッドを活用すれば、Excel上の重要な文字を強調表示できるようになり、読みやすく整理されたシートを自動で作成することが可能になります。

ポイント

手動で書式を整える必要がなくなるため、Power Automateなどと連携してExcel作業を完全自動化したい場合にも非常に便利です。

フォント設定に使える主なメソッド一覧

Officeスクリプトでは、文字の太字設定だけでなく、文字サイズ・フォント種類・スタイルなどの見た目も自由に調整できます。

以下に、Excelスクリプトでよく使われるフォント関連のメソッド一覧をまとめました。

スクロールできます
メソッド名機能概要補足説明
getFormat()セルのフォーマット(書式)を
取得する
フォント設定にアクセスするための
入口となるメソッド
getFont()フォント設定を取得するgetFormat()と組み合わせて使います
setBold(true/false)太字のオン/オフtrueで太字に、falseで通常表示
setSize(数値)フォントサイズを設定する数値はポイント(pt)で指定
(例:setSize(16)
setName(“フォント名”)フォントの種類を設定する例:setName("游ゴシック")
setItalic(true/false)斜体のオン/オフtrueで斜体に
setUnderline(スタイル)下線を設定するExcelScript.RangeUnderlineStyle.single
など指定可
setStrikethrough(true/false)取り消し線の設定trueで取り消し線を表示
setSuperscript(true/false)上付き文字にする数式や注釈に便利
setSubscript(true/false)下付き文字にする化学式などで使用可能

OfficeスクリプトでsetBold()を使ってExcelの文字を太字にする方法を詳しく解説

setBold()メソッドは、true または false を指定することで、セル内のテキストを太字にしたり、元に戻したりすることができます。

setBold()の基本的な使い方

setBold()メソッドの使用方法
スクロールできます
パラメーター必須/任意説明
setBold(true)必須フォントを太字に設定します(強調表示)
setBold(false)必須太字を解除し、通常の文字スタイルに戻します
使用のポイント
  • setBold()trueで太字に、falseで元に戻すというシンプルな構文です。
  • 太字にしたい対象のセルに対して、getFormat().getFont()経由でフォント設定を取得するのが基本の書き方です。

さらに詳細な仕様については、Microsoft公式 – ExcelScript.RangeFont interfaceを参照してくださ

基本的な使用例:セルA1の文字を太字に設定する

function main(workbook: ExcelScript.Workbook): void {
  // ワークシートの取得(Sheet1を指定)
  const sheet: ExcelScript.Worksheet = workbook.getWorksheet("Sheet1");

  // セルA1の取得
  const cell: ExcelScript.Range = sheet.getRange("A1");

  // フォントオブジェクトの取得
  const font: ExcelScript.RangeFont = cell.getFormat().getFont();

  // フォントを太字に設定
  font.setBold(true);
}

実行結果

このコードを実行すると、「Sheet1」のA1セルの文字が太字に変更されます。
Excelの報告書やチェックリストで、目立たせたい文字や見出しに太字を適用することで、視認性がぐっと向上します。

基本的な使用例
スポンサーリンク

Officeスクリプトで文字(フォント)を太字にする使用例

それでは、文字(フォント)を太字に変更する具体的な使用例を紹介します。

以下に紹介する使用例は、すべてコピペしてすぐに実行できるコードです。
気になる例は、ぜひご覧いただき、実際に実行してみてください。

Officeスクリプトを「基礎からしっかり学んで業務効率化したい」方には、
動画で学べる UdemyのOfficeスクリプト講座 がおすすめです。

  • 初心者でも迷わないステップバイステップ動画解説
  • 豊富な実践例で現場ですぐ使えるスキルが身につく
  • スマホやPCからいつでも繰り返し視聴可能

特に自己学習で進める場合、ビデオや実践例があると理解が進みやすくなりますよ。

Udemyでoffice scriptを検索
Udemyでoffice scriptを検索 画像出典:Udemy

\  自分のペースで学べるOfficeスクリプト講座はこちら  /

使用例1: 複数のセルの文字を一括で太字にする方法

このコードでは、Excelのシート内にある複数のセルの文字列をまとめて太字に変更します。
getRange()で範囲を指定し、getFormat().getFont().setBold(true)を使用することで、一括で強調表示することができます。

コード例|複数セルの文字を一括で太字にする

function main(workbook: ExcelScript.Workbook): void {
  // ワークシートの取得
  const sheet = workbook.getWorksheet("Sheet1");

  // 対象範囲(A1〜A5)のセルを取得
  const range = sheet.getRange("A1:A5");

  // 取得した範囲のフォントを太字に設定
  range.getFormat().getFont().setBold(true);
}

処理結果

使用例1の結果

コードの動作概要

STEP
対象のワークシートを取得する

workbook.getWorksheet("Sheet1")を使用して、操作対象となる「Sheet1」のシートを取得します。
複数のシートがある場合でも、ここで指定したシートだけが処理対象になります。

STEP
複数のセル範囲を選択する

getRange("A1:A5")を使って、セルA1からA5までの範囲を一括で取得します。
この範囲内のすべてのセルに対して後続の書式設定が適用されます。

STEP
セル範囲内の文字列を太字にする

getFormat().getFont().setBold(true)で、取得した範囲のフォント設定にアクセスし、文字を太字にします。
範囲全体に一括で適用されるため、手作業で1セルずつ変更する必要はありません。

STEP
処理完了(自動反映)

スクリプトが正常に実行されると、対象範囲の文字が太字になります。
特にExcel Online上では、実行直後に自動的に変更が反映されます。Power Automateとの連携時もこの形式で処理が進みます。

このコードで使用している機能

スクロールできます
機能名説明
getWorksheet()指定した名前のシートを取得します
getRange()セル範囲(この例ではA1〜A5)を指定します
getFormat()セルの書式情報を取得します
getFont()フォント設定にアクセスするためのメソッドです
setBold(true)セルの文字を太字に設定します(falseで解除)

1行ずつコードを解説

クリック」してコードの詳細解説を見る
  1. function main(workbook: ExcelScript.Workbook): void {
    • Officeスクリプトのメイン関数を定義します。
      Excelブックを操作する起点となります。
  2. const sheet = workbook.getWorksheet(“Sheet1”);
    • 「Sheet1」という名前のワークシートを取得します。
      ここで操作する対象のシートを指定します。
  3. const range = sheet.getRange(“A1:A5”);
    • セル範囲「A1:A5」を取得します。
      この範囲内のすべてのセルに対して、後続の処理を実行します。
  4. range.getFormat().getFont().setBold(true);
    • 取得したセル範囲のフォント設定を取得し、太字に設定します。
      setBold(true)を使うことで、範囲内のすべての文字を一括で太字にできます。
  5. }
    • main関数の終了を示します。

総括・ポイント

このコードは、複数のセルをまとめて太字にする基本的なOfficeスクリプトの使用例です。
手動で書式設定する手間を省けるため、特にPower Automateと連携した自動処理にも最適です。

このコードのまとめ
  • getRange("A1:A5")で複数セルを一括指定
  • getFormat().getFont().setBold(true)で範囲内すべてを太字に変更
  • フォントサイズや色の変更も組み合わせるとさらに視認性UP!

使用例2: 条件付きでセルの文字を太字に変更する(数式対応)

このコードは、Excelのセルに入力された値または関数の計算結果が 「100以上」 の場合に、該当セルの文字を自動で太字にする実用的なスクリプトです。
SUM()などの関数が入っているセルにも対応しているため、日報・集計レポート・成績一覧などの自動装飾に活用できます。

コード例|100以上のセルだけを太字にする

function main(workbook: ExcelScript.Workbook): void {
  // ワークシートの取得
  const sheet: ExcelScript.Worksheet = workbook.getWorksheet("Sheet1");

  // 範囲A1:A10を取得
  const range: ExcelScript.Range = sheet.getRange("A1:A10");

  // 範囲の行数を取得
  const rowCount: number = range.getRowCount();

  // 各セルの値をチェックして条件を満たせば太字に設定
  for (let i = 0; i < rowCount; i++) {
    const cell: ExcelScript.Range = range.getCell(i, 0); // 0列目 = A列
    const value: unknown = cell.getValue();

    // 数式の結果も含め、安全に数値かどうかを判定
    if (typeof value === "number" && isFinite(value) && value >= 100) {
      cell.getFormat().getFont().setBold(true);
    }
  }
}

処理結果

使用例2の結果

コードの動作概要

STEP
対象のワークシートを取得する

workbook.getWorksheet("Sheet1") によって、「Sheet1」という名前のシートを操作対象に設定します。

STEP
評価対象となるセル範囲を指定

sheet.getRange("A1:A10") で、A列の1行目から10行目までの範囲を一括指定します。

STEP
範囲内の行数を取得

getRowCount() を使って、対象範囲に含まれる行数(=10)を取得し、ループに活用します。

STEP
1セルずつ取得して値をチェック

getCell(i, 0) で各行のA列のセルを順に取得し、getValue() でそのセルの値または関数の結果を取得します。

STEP
条件(100以上)を満たす場合に太字を適用

typeof value === "number"isFinite(value) を使って安全に数値判定を行い、100以上であれば setBold(true) を実行して太字にします。

このコードで使用している機能

スクロールできます
機能名説明
getWorksheet()ワークシート(Sheet1)を取得します
getRange()指定範囲(A1:A10)を取得します
getRowCount()指定範囲の行数を取得します
getCell(i, 0)i行目・0列目のセル(A列)を取得します
getValue()セルの値(数式の結果を含む)を取得します
typeof値が数値かどうかを判定します
isFinite()値がNaNやInfinityでない有効な数値かを判定します
setBold(true)フォントを太字に設定します

1行ずつコードを解説

クリック」してコードの詳細解説を見る
  1. function main(workbook: ExcelScript.Workbook): void {
    • Officeスクリプトのメイン関数を定義します。
      Excelブックを操作する起点となります。
  2. const sheet: ExcelScript.Worksheet = workbook.getWorksheet(“Sheet1”);
    • 「Sheet1」という名前のワークシートを取得します。
  3. const range: ExcelScript.Range = sheet.getRange(“A1:A10”);
    • A1からA10までのセル範囲を取得します。
  4. const rowCount: number = range.getRowCount();
    • 範囲内に含まれる行数(=10)を取得し、ループ制御に使用します。
  5. for (let i = 0; i < rowCount; i++) {
    • A1〜A10の各セルを順に処理するためのループ処理です。
  6. const cell: ExcelScript.Range = range.getCell(i, 0);
    • A列のi行目のセルを取得します。
  7. const value: unknown = cell.getValue();
    • セルに入力された値、または関数の結果を取得します。
  8. if (typeof value === “number” && isFinite(value) && value >= 100) {
    • 値が数値で、かつ100以上である場合にのみ後続処理を実行します。
  9. cell.getFormat().getFont().setBold(true);
    • 条件を満たすセルに対して、文字を太字に設定します。
  10. }
    • if文終了
  11. }
    • forループ終了
  12. }
    • main関数終了

総括・ポイント

このスクリプトは、条件付きでセルの文字を自動的に太字に装飾する便利な使い方を示しています。
関数の計算結果にも対応しており、実務の自動化に直結する非常に実用的な例です。

このコードのまとめ
  • getCell(i, 0) でセルを1つずつ安全に取得できます。
  • getValue() で関数の結果も含めて評価することができます。
  • isFinite() でエラー値やNaNを回避し、堅牢なコードにすることができます。
  • Power Automateと組み合わせれば、レポート作成の自動装飾も可能です。
スポンサーリンク

よくある質問(Q&A)をご紹介

セルの一部だけを太字にすることはできますか?

現時点(2025/4)のOfficeスクリプトでは、セル内の一部分だけを太字にすることはできません

setBold(true)はセル全体のフォント(文字)に適用されるメソッドであり、
「売上:1000円」のうち数字だけを太字にするような処理はできません。

対策

一部分だけの装飾(リッチテキスト)を行いたい場合は、VBAの使用を検討しましょう。

太字にしたのに、見た目があまり変わりません…

Officeスクリプトで文字を太字にしたにも関わらず、Excel上で太字に見えないと感じることがあります。

特に「メイリオ」「游ゴシック」など一部のフォントでは、太字と通常の違いが分かりづらいこともあります。

対策
  • フォントを「Arial」や「Calibri」など、太字がはっきりするものに変更しましょう。
  • フォントサイズを少し大きくしましょう。(例:setSize(14)など)
  • セルの背景色や文字色の変更も併用して、視認性を高めましょう。

Power Automateで太字設定がうまく動きません…

Power AutomateでOfficeスクリプトを呼び出した際、太字設定が即時にExcelに反映されないことがあります。
これは、処理や保存のタイミングによるものです。

Power AutomateからOfficeスクリプトを呼び出す場合、スクリプト内で編集した内容が即時に表示に反映されないことがあります。

対策
  • スクリプトの実行完了まで待機してから次のステップに進んでいるか確認をしましょう。
  • ファイルをOneDriveやSharePoint上で扱っている場合、保存タイミングがずれることもあります。
  • 処理ステップの最後に「保存」や「通知」処理を入れて、確実に反映されたことを確認しましょう。
スポンサーリンク

この記事のまとめ

この記事では、OfficeスクリプトでExcelのセル内の文字(フォント)を太字にする方法について詳しく解説しました。
基本的な構文から応用パターン、そしてPower Automateとの連携や注意点まで、実務でそのまま使える形でまとめています。

「VBAのようにセルの文字を制御したい」「ルーチン作業を自動化したい」という方にとって、Officeスクリプトは強力な選択肢になります。

ポイントのおさらい

今回の学びを活用するために

Officeスクリプトを使ったExcel自動化は、学べば学ぶほど業務がラクになります。
「もっと複雑な条件で書式を変えたい」「他の列と連動させたい」など、次のステップに進みたい方には以下の記事もおすすめです。

あわせて読みたい
サイトマップ このページは、本サイトの記事を分かりやすくまとめました。ぜひご覧ください。 目次 「共通」を見る 「VBA」を見る 「Officeスクリプト」を見る 「ワークシート関数」...
スポンサーリンク
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次