VBA でフォントの色が赤かどうかを確認し、結果を Excel に返す
VBA マクロの実装 は、Excel で操作を実行するための最も効果的、迅速、かつ安全な方法です。この記事では、データセットのフォントの色が赤の場合に、VBA を使用して Excel で特定の結果を取得する方法を示します。 .
ワークブックをダウンロード
ここから無料の練習用 Excel ワークブックをダウンロードできます。
フォントの色が赤かどうかを確認し、Excel で VBA を使用して特定の結果を返す 6 つの方法
フォントの色が赤の値がいくつかある次のデータセットを見てください。このセクションでは、フォントの色が赤の場合の段階的な手順と、Excel で特定の結果を取得する方法について説明します。
1.フォントの色が赤の場合、Excel で特定の単語を返す
Yes を返したい フォントの色が赤でいいえの場合 フォントの色が赤でない場合。 Excel VBA でそれを行う方法を見てみましょう .
手順:
- Alt + F11 を押します キーボードで、またはタブ Developer -> Visual Basic に移動します Visual Basic Editor を開く .
- ポップアップ コード ウィンドウで、メニュー バーから [挿入] -> [モジュール] をクリックします。 .
- 次のコードをコピーして、コード ウィンドウに貼り付けます。
Function FontColorRed(target As Range)
Application.Volatile
If target.Font.Color = 255 Then
FontColorRed = "Yes"
Else
FontColorRed = "No"
End If
End Function
これは VBA のサブ プロシージャではありません プログラムを実行します。これは ユーザー定義関数 (UDF) を作成しています .したがって、コードを記述した後、[実行] ボタンをクリックする代わりに メニュー バーから [保存] をクリックします。 .
- 対象のワークシートに戻り、作成したばかりの関数を VBA で記述します。 コード (Function FontColorRed コードの最初の行) と FontColorRed の括弧内 関数に セル参照番号 を渡します 文字に変換したいもの (この場合、セル C5 を渡します) かっこ内)
したがって、最終的な式は、
=FontColorRed(C5)
- Enter を押します .
はい セル C5 のフォントの色の場合 それ以外の場合は いいえ になります .この場合、セル C5 内のテキストのフォントの色 は赤ではなかったので、いいえになりました。
- フィル ハンドルで行を下にドラッグします UDF を適用するには 残りのセルに入力すると Yes となります 赤いフォント カラーのテキストを保持するセルの横。
2.フォントの色が赤の場合はカラー コードを返す
ここでは、VBA を使用して、Excel のフォント色の赤に基づいてカラー コードを抽出する方法を学習します。 .
手順:
- 前と同じように、Visual Basic Editor を開きます 開発者から タブと挿入 モジュール コード ウィンドウで。
- コード ウィンドウで、次のコードをコピーして貼り付けます。
Function ColorCode(rng As Range)
ColorCode = rng.Font.ColorIndex
End Function
- さて、前に示したように、呼び出し カラーコード データセットからの UDF、セル参照番号を渡す (例:C5 ) を引数として入力し、Enter を押します。
関連するカラー コードを戻り値として取得します。
- フィル ハンドルで行を下にドラッグします UDF を適用するには フォントの色が赤のコードを取得するために残りのセルにアクセスします。
3.フォントの色が赤の場合、Excel でインデックスを返します
ここでは、VBA を使用して、Excel でフォントの色の赤に基づいてインデックス番号を返す方法を学習します。 .
手順:
- 前と同じように、Visual Basic Editor を開きます 開発者から タブと挿入 モジュール コード ウィンドウで。
- コード ウィンドウで、次のコードをコピーして貼り付けます。
Function IndexColor(cell As Range)
IndexColor = cell.Font.Color
End Function
- さて、前に示したように、呼び出し IndexColor データセットからの UDF、セル参照番号を渡す (例:C5 ) を引数として入力し、Enter を押します。
関連するフォント色のインデックス番号を戻り値として取得します。
- フィル ハンドルで行を下にドラッグします UDF を適用するには 残りのセルに対して、フォントの色が赤のインデックス番号を取得します。
赤いフォントのテキストを含むセルは 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
- さて、前に示したように、呼び出し FontRGB データセットからの UDF、セル参照番号を渡す (例:C5 ) を引数として入力し、Enter を押します。
関連するフォント色の RGB コードを戻り値として取得します。
- フィル ハンドルで行を下にドラッグします UDF を適用するには 残りのセルに対して、フォント色赤の RGB コードを取得します。
赤いフォントのテキストを含むセルは 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
コードを実行する準備ができました。
- F5 を押します キーボードまたはメニュー バーから Run -> Run Sub/UserForm を選択します . 小さな再生アイコンをクリックすることもできます サブメニュー バーでマクロを実行します。
赤いフォントのセルが強調表示されていることがわかります。
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 で特定の結果を取得する方法を示しました。 .この記事があなたにとって非常に有益であることを願っています。このトピックについて質問がある場合は、お気軽にお問い合わせください。
あなたも探検したいかもしれません
- Excel で文字列から文字を削除する VBA (7 つのメソッド)
- VBA を使用して Excel で空の行を削除する方法
- 基準に基づいて Excel に行を挿入する VBA マクロ (4 つの方法)
- Excel で VBA を使用して行を数える方法 (5 つのアプローチ)
- Excel のセル値に基づいて行全体を削除する VBA (3 つの方法)
-
Excel で条件付き書式を使用して色でフィルター処理する方法
Excel で作業しているときに、データを色でフィルタリングする必要があることがよくあります 条件付き書式で書式設定されている . Excel の条件付き書式機能を利用して、さまざまな条件を適用してセルの外観を変更できます。色に応じてデータをフィルタリングすることで、データセットから必要な特定のデータを抽出できます。データセットが小さい場合は、手動で完了することができる場合があります。ただし、膨大なデータセットの場合、手動でデータをフィルタリングするのは困難です。それは時間のかかる面倒な作業に変わります。しかし、あなたは幸運です!あなたは、実質的にすべてのスプレッドシート関連の問題に対する解決
-
Excel でセルの色でフィルター処理する方法 (2 つの簡単な方法)
Excel では、通常、目的に応じてセルをさまざまな色で塗りつぶすことができます。この記事は、さまざまな色を使用してさまざまな種類の内容を示すワークシートがあり、セルの色に基づいて特定のセルをフィルター処理または選択する場合に役立ちます。この記事では、フィルタリングする方法を紹介します セルごと 色 エクセルで . 次の Excel ワークブックをダウンロードして、理解を深め、自分で練習してください。 Excel でセルの色でフィルター処理する 2 つの便利な方法 以下の方法では、Excel でセルの色でフィルター処理する方法を学習します。 フィルタ を利用して コマンドと 検索 の使