Office
 Computer >> コンピューター >  >> ソフトウェア >> Office

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

VBA マクロの実装 は、Excel で操作を実行するための最も効果的、迅速、かつ安全な方法です。この記事では、データセットのフォントの色が赤の場合に、VBA を使用して Excel で特定の結果を取得する方法を示します。 .

ワークブックをダウンロード

ここから無料の練習用 Excel ワークブックをダウンロードできます。

フォントの色が赤かどうかを確認し、Excel で VBA を使用して特定の結果を返す 6 つの方法

フォントの色が赤の値がいくつかある次のデータセットを見てください。このセクションでは、フォントの色が赤の場合の段階的な手順と、Excel で特定の結果を取得する方法について説明します。

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

1.フォントの色が赤の場合、Excel で特定の単語を返す

Yes を返したい フォントの色が赤でいいえの場合 フォントの色が赤でない場合。 Excel VBA でそれを行う方法を見てみましょう .

手順:

  • Alt + F11 を押します キーボードで、またはタブ Developer -> Visual Basic に移動します Visual Basic Editor を開く .

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

  • ポップアップ コード ウィンドウで、メニュー バーから [挿入] -> [モジュール] をクリックします。 .

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

  • 次のコードをコピーして、コード ウィンドウに貼り付けます。
Function FontColorRed(target As Range)
    Application.Volatile
    If target.Font.Color = 255 Then
    FontColorRed = "Yes"
    Else
    FontColorRed = "No"
    End If
End Function

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

これは VBA のサブ プロシージャではありません プログラムを実行します。これは ユーザー定義関数 (UDF) を作成しています .したがって、コードを記述した後、[実行] ボタンをクリックする代わりに メニュー バーから [保存] をクリックします。 .

  • 対象のワークシートに戻り、作成したばかりの関数を VBA で記述します。 コード (Function FontColorRed コードの最初の行) と FontColorRed の括弧内 関数に セル参照番号 を渡します 文字に変換したいもの (この場合、セル C5 を渡します) かっこ内)

したがって、最終的な式は、

=FontColorRed(C5)

  • Enter を押します .

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

はい セル C5 のフォントの色の場合 それ以外の場合は いいえ になります .この場合、セル C5 内のテキストのフォントの色 は赤ではなかったので、いいえになりました。

  • フィル ハンドルで行を下にドラッグします UDF を適用するには 残りのセルに入力すると Yes となります 赤いフォント カラーのテキストを保持するセルの横。

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

2.フォントの色が赤の場合はカラー コードを返す

ここでは、VBA を使用して、Excel のフォント色の赤に基づいてカラー コードを抽出する方法を学習します。 .

手順:

  • 前と同じように、Visual Basic Editor を開きます 開発者から タブと挿入 モジュール コード ウィンドウで。
  • コード ウィンドウで、次のコードをコピーして貼り付けます。
Function ColorCode(rng As Range)
    ColorCode = rng.Font.ColorIndex
End Function

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

  • さて、前に示したように、呼び出し カラーコード データセットからの UDF、セル参照番号を渡す (例:C5 ) を引数として入力し、Enter を押します。

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

関連するカラー コードを戻り値として取得します。

  • フィル ハンドルで行を下にドラッグします UDF を適用するには フォントの色が赤のコードを取得するために残りのセルにアクセスします。

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

3.フォントの色が赤の場合、Excel でインデックスを返します

ここでは、VBA を使用して、Excel でフォントの色の赤に基づいてインデックス番号を返す方法を学習します。 .

手順:

  • 前と同じように、Visual Basic Editor を開きます 開発者から タブと挿入 モジュール コード ウィンドウで。
  • コード ウィンドウで、次のコードをコピーして貼り付けます。
Function IndexColor(cell As Range)
        IndexColor = cell.Font.Color
End Function

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

  • さて、前に示したように、呼び出し IndexColor データセットからの UDF、セル参照番号を渡す (例:C5 ) を引数として入力し、Enter を押します。

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

関連するフォント色のインデックス番号を戻り値として取得します。

  • フィル ハンドルで行を下にドラッグします UDF を適用するには 残りのセルに対して、フォントの色が赤のインデックス番号を取得します。

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

赤いフォントのテキストを含むセルは 255 を返します 色 のインデックス番号として 255 です .

4. Excel でフォントの色が赤の場合、RGB コードを返す

ここでは、VBA を使用して、Excel のフォント色の赤に基づいて RGB コードを取得する方法を学習します。 .

手順:

  • 前と同じように、Visual Basic Editor を開きます 開発者から タブと挿入 モジュール コード ウィンドウで。
  • コード ウィンドウで、次のコードをコピーして貼り付けます。
Function FontRGB(cell As Range)
    Dim iColorIndex As Long
    Dim iColor As Variant
    iColorIndex = cell.Font.Color
    iColor = iColorIndex Mod 256
    iColor = iColor & ", "
    iColor = iColor & (iColorIndex \ 256) Mod 256
    iColor = iColor & ", "
    iColor = iColor & (iColorIndex \ 256 \ 256) Mod 256
    FontRGB = iColor
End Function

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

  • さて、前に示したように、呼び出し FontRGB データセットからの UDF、セル参照番号を渡す (例:C5 ) を引数として入力し、Enter を押します。

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

関連するフォント色の RGB コードを戻り値として取得します。

  • フィル ハンドルで行を下にドラッグします UDF を適用するには 残りのセルに対して、フォント色赤の RGB コードを取得します。

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

赤いフォントのテキストを含むセルは 255,0,0 を返します 色 の RGB コードとして 255,0,0 です .

5.フォントの色が赤の場合、セルを強調表示

フォントの色が赤のテキストを保持するセルを強調表示する場合は、記事を読み続けてその方法を理解してください。

手順:

  • 前と同じように、Visual Basic Editor を開きます 開発者から タブと挿入 モジュール コード ウィンドウで。
  • コード ウィンドウで、次のコードをコピーして貼り付けます。
Sub HighlightCell()    
    Set ws = Sheets("Highlight") 'set the worksheet    
    For r = 1 To 104
        For c = 1 To 36
            If (ws.Cells(r, c).Font.Color = 255) Then
                'set the desired color index
                ws.Cells(r, c).Interior.ColorIndex = 34
            End If
        Next c
    Next r
End Sub

コードを実行する準備ができました。

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

  • F5 を押します キーボードまたはメニュー バーから Run -> Run Sub/UserForm を選択します . 小さな再生アイコンをクリックすることもできます サブメニュー バーでマクロを実行します。

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

赤いフォントのセルが強調表示されていることがわかります。

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

6.フォントの色が赤の場合はフォントの色を変更

フォントの色を赤からデフォルトの色に戻したい場合は、以下に示す手順に従ってください。

手順:

  • 前と同じように、Visual Basic Editor を開きます 開発者から タブと挿入 モジュール コード ウィンドウで。
  • コード ウィンドウで、次のコードをコピーして貼り付けます。
Sub ChangeFontColor()
    With Application.FindFormat.Font
        .Subscript = False
        .Color = 255
        .TintAndShade = 0
    End With
    With Application.ReplaceFormat.Font
        .Subscript = False
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
    End With
    Cells.Replace What:="", Replacement:="", LookAt:=xlPart, SearchOrder:= _
    xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=True
End Sub

コードを実行する準備ができました。

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

  • 走る

VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す

フォントの色が赤の値は、デフォルトのフォントの色に戻されました。

結論

この記事では、データセット内の値のフォントの色が赤の場合に、VBA を使用して Excel で特定の結果を取得する方法を示しました。 .この記事があなたにとって非常に有益であることを願っています。このトピックについて質問がある場合は、お気軽にお問い合わせください。

あなたも探検したいかもしれません

  • Excel で文字列から文字を削除する VBA (7 つのメソッド)
  • VBA を使用して Excel で空の行を削除する方法
  • 基準に基づいて Excel に行を挿入する VBA マクロ (4 つの方法)
  • Excel で VBA を使用して行を数える方法 (5 つのアプローチ)
  • Excel のセル値に基づいて行全体を削除する VBA (3 つの方法)

  1. Excel で条件付き書式を使用して色でフィルター処理する方法

    Excel で作業しているときに、データを色でフィルタリングする必要があることがよくあります 条件付き書式で書式設定されている . Excel の条件付き書式機能を利用して、さまざまな条件を適用してセルの外観を変更できます。色に応じてデータをフィルタリングすることで、データセットから必要な特定のデータを抽出できます。データセットが小さい場合は、手動で完了することができる場合があります。ただし、膨大なデータセットの場合、手動でデータをフィルタリングするのは困難です。それは時間のかかる面倒な作業に変わります。しかし、あなたは幸運です!あなたは、実質的にすべてのスプレッドシート関連の問題に対する解決

  2. Excel でセルの色でフィルター処理する方法 (2 つの簡単な方法)

    Excel では、通常、目的に応じてセルをさまざまな色で塗りつぶすことができます。この記事は、さまざまな色を使用してさまざまな種類の内容を示すワークシートがあり、セルの色に基づいて特定のセルをフィルター処理または選択する場合に役立ちます。この記事では、フィルタリングする方法を紹介します セルごと 色 エクセルで . 次の Excel ワークブックをダウンロードして、理解を深め、自分で練習してください。 Excel でセルの色でフィルター処理する 2 つの便利な方法 以下の方法では、Excel でセルの色でフィルター処理する方法を学習します。 フィルタ を利用して コマンドと 検索 の使