重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

エクセルで特定文字を含むものを抽出する方法を知りたいです。
例えば、
A | B | C
bad | go    |
hat | where   |
mad |dad    |
table |chat    |
mountain |fat     |

とならんでいて
"ad"が文字に含まれるものを
Cの列に出したいです。

また、C列に出さず文字にハイライトを入れる方法も知りたいです。

よろしくお願いします。

A 回答 (3件)

添付図のみにて・・・

「エクセルでの特定文字を含むものを抽出する」の回答画像3
    • good
    • 0

こんにちは!



VBAになりますが・・・一例です。
まず、C列に表示するコードです。
データは1行目からあるとします。

Sub Sample1()
Dim i As Long, j As Long, cnt As Long
For j = 1 To 2 '//A~B列//
For i = 1 To Cells(Rows.Count, j).End(xlUp).Row
If InStr(Cells(i, j), "ad") > 0 Then
cnt = cnt + 1
Cells(cnt, "C") = Cells(i, j)
End If
Next i
Next j
End Sub

>C列に出さず文字にハイライトを入れる方法
セルの塗りつぶしでよいのでしょうか?
そうであれば、条件付き書式で可能です。

A・Bすべてを範囲指定 → 条件付き書式 → 新しいルール → 数式を使用して・・・ → 数式欄に
=COUNTIF(A1,"*ad*")
という数式を入れ → 書式 → 塗りつぶしから好みの色を選択しOK!

これで大丈夫だと思います。m(_ _)m
    • good
    • 0

FIND関数やSEARCH関数で文字列の中に検索する文字が何番目に出てくるかを調べる事ができるので、これを使うと良いでしょう。


同じ文字が見つからないとエラーになりますので、Excel2007以降を使っているならIFERROR関数と組み合わせると便利。
2007よりも前のバージョンならIF関数とISERROR関数を組み合わせると良い。

文字にハイライトを入れる…の意味がよく分かりませんが、
対象の文字の背景だけの色を変えるという事はExcelではできません。
セルの背景色を丸ごと変えると乞う事なら可能です。
(この場合エラー処理は不要で、条件が整えばセルを修飾し、条件が整わなかったりエラーになった場合は修飾されません)


※FIND関数、SEARCH関数の使い方を調べてみましょう。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!