No.2ベストアンサー
- 回答日時:
こんばんは!
画像の配置通りだとしての一例です。
Sub Sample1()
Dim i As Long, k As Long, myStr As String
Dim myFound As Range, myFirst As Range
For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row
myStr = Cells(i, "A")
Set myFound = Range("C:C").Find(what:=myStr, LookIn:=xlValues, lookat:=xlPart)
If Not myFound Is Nothing Then
Set myFirst = myFound
GoTo 処理
Do
Set myFound = Range("C:C").FindNext(after:=myFound)
If myFound.Address = myFirst.Address Then Exit Do
GoTo 処理
処理:
For k = 1 To Len(myFound)
If Mid(myFound, k, Len(myStr)) = myStr Then
myFound.Characters(Start:=k, Length:=Len(myStr)).Font.ColorIndex = 3
End If
Next k
Loop
End If
Next i
End Sub
こんな感じではどうでしょうか?m(_ _)m
ありがとうございます。一発で動きました!
しかもキーワード200セル、文章3000セルでも1分かからずに処理が完了しました!
Rangeの指定セルあたりを実際の使用状況に合わせて変更して使用させて頂きます。
大変助かりました。
No.1
- 回答日時:
を変更することで可能ですね。
まずリスト範囲に「リスト」という名前をつけておきます。
そのリスト内の文字列に色をつけておけば、ヒットした文字列がその色に変更されます。
>For Each セル In Range("1:50")
の部分は
For Each セル In Range("C:C")
に変更することはできますが、そうして実行すると気が遠くなるほどの時間を要します。
For Each セル In Range("C2:C1000")
とか
For Each セル In Range("C2:C" & & Cells(Rows.Count, 3).End(xlUp).Row)
にした方がいいでしょう。
試してみましたが、リスト3個、文章50個でも初回は数十秒かかりました。
ありがとうございます。
これならVBA初心者の私にも自力で作成が可能になりそうです。
今後の自力作成や細部のカスタマイズの際に参考にさせて頂きます!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(コンピューター・テクノロジー) pc入力のテンプレはどうしてる? 5 2023/01/14 17:20
- Excel(エクセル) Excelのリストにある文字を含むセルを、複数の色で色付けしたいです 2 2022/08/11 17:39
- Excel(エクセル) エクセルの条件付き書式で*を使いたい 4 2022/05/13 16:49
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/06/15 14:11
- Word(ワード) 正の文字 4 2022/08/23 16:06
- Visual Basic(VBA) EXCEL VBA 単語置き換え について質問です ブック名 ぶぶぶ シート名 ししし セル V3〜 3 2023/03/08 01:41
- Excel(エクセル) エクセルでA列セル内で折り返すことなく、文字列を、B列C列・・・側に一行に 2 2022/07/23 02:02
- Windows 7 エクセルで重複データから抽出したい 2 2022/05/18 23:31
- Visual Basic(VBA) WordのVBAについて 5 2023/01/11 14:38
このQ&Aを見た人はこんなQ&Aも見ています
-
「環境が人を育てる」って本当?環境によって人格や生き方は本当に変わるのか
環境が人生に与える影響は実際どれほどのものなのか、専門家の田宮由美さんに伺った。
-
リストと一致する値のセルを塗りつぶしたい。
その他(Microsoft Office)
-
EXCEL VBA で特定の文字に色をつけるマクロを書きたいのですが
Excel(エクセル)
-
VBA リストを参照して文字色を変える
その他(ソフトウェア)
-
-
4
EXCEL VBA で複数の特定文字に色をつけたい
その他(Microsoft Office)
-
5
他シートのある列を検索して一致したらセルに色をつける方法
会計ソフト・業務用ソフト
-
6
VBAで特定の文字を探して隣のセルに色を付けたい
Excel(エクセル)
-
7
【VBA】特定の範囲で同じ値を含むセルの色を変える
その他(Microsoft Office)
-
8
VBAで特定の文字以降の文字列の色の変更をしたい
Excel(エクセル)
-
9
リストの単語が含まれるセルを自動で塗りつぶす方法
Excel(エクセル)
-
10
特定の文字がある行以外を削除するマクロ
その他(Microsoft Office)
-
11
VBA 列全体を別シートの列と比較し、同じ値がある行の、右端に値をコピーする方法について
Excel(エクセル)
-
12
エクセルマクロ 赤色の文字を検索するについて
Excel(エクセル)
-
13
エクセルでエラーが出て困っています。
Excel(エクセル)
-
14
Excelで数式内の文字色を一部だけ変更したい
Excel(エクセル)
-
15
エクセルVBAで、条件に一致するセルへ移動
Excel(エクセル)
-
16
ExcelVBAを使って、値がある場合は作業を繰り返し実行するプログラムを作成したい。
Visual Basic(VBA)
-
17
EXCEL VBAで、セルの文字列の前後に文字を入力する方法は?
その他(Microsoft Office)
-
18
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
19
別シートの文字列があったら現シートのセルの色変える
その他(Microsoft Office)
-
20
ある列のセルに特定の文字が入っていたら他のセルに決まった文字を入れる
Word(ワード)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル マクロ オートフィ...
-
【Excel関数】UNIQUE関数で"0"...
-
excelのデータで色つき行の抽出...
-
AのセルとB行を比較して、一致...
-
エクセル 上下で列幅を変えるには
-
エクセルで特定の文字列が入っ...
-
EXCEL VBA マクロ 別シートの...
-
Excel グラフのプロットからデ...
-
エクセルVBAのEntireRow.Hidden...
-
excel 小さすぎて見えないセル...
-
EXCELのVBAで空白列を削除して...
-
エクセルで昨日までの日付デー...
-
Excel:いまフォーカスがあるセ...
-
エクセル マクロで数値が変っ...
-
アクティブになっている行をマ...
-
エクセルのマクロで意図しない...
-
結合されたセルをプルダウンの...
-
【エクセル】自動で、同じ内容...
-
エクセルのセルに指定画像(.jpg...
-
【マクロ】book1からbook2への...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル マクロ オートフィ...
-
エクセルで特定の文字列が入っ...
-
[EXCEL]ボタン押す→時刻が表に...
-
【Excel関数】UNIQUE関数で"0"...
-
特定の文字がある行以外を削除...
-
Excel グラフのプロットからデ...
-
excelのデータで色つき行の抽出...
-
AのセルとB行を比較して、一致...
-
結合されたセルをプルダウンの...
-
エクセル マクロで数値が変っ...
-
エクセル 上下で列幅を変えるには
-
VBAで色の付いているセルの行削除
-
excel 小さすぎて見えないセル...
-
A1に入力された文字列と同じ文...
-
罫線の斜線を自動で引くマクロ
-
アクティブになっている行をマ...
-
エクセル2016で時間を入力して...
-
EXCELマクロを使い、空白行では...
-
エクセルマクロで偶数行(又は...
-
セルの色によって条件文をつけ...
おすすめ情報