重要なお知らせ

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

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

ということなのですが。条件付き書式、あるいはマクロなどで解決できないでしょうか? 特定の文字列に「等しい」セルを塗りつぶすというのは、かんたんにできるようなのですが、「含む」になると、過去ログから見つけられませんでした。

300ファイルくらいあるデータから、特定の文字を含むセルをマーキングし、情報を抽出せねばなりません。

どなたか知恵をかしてくださいませ!

A 回答 (9件)

これでどうでしょうか?


Sub main()
Moji = "特定の文字列"
For i = 1 To Sheets.Count
With Worksheets(i).Range("a1:IV65536")
Set c = .Find(Moji, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.Interior.Pattern = xlPatternGray50
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
Next i
End Sub
    • good
    • 0
この回答へのお礼

いけてます。
しかし、網掛けなのが少し見えずらいかもしれません…。
ぜいたくですが。
色をしくとかって可能ですか? さらにぜいたくですが、
その横一列をピンク色とかにするのって可能ですか?

お手数おかけします。

お礼日時:2003/07/04 15:43

>しかし、網掛けなのが少し見えずらいかもしれません…。

ぜいたくですが。

この部分をお好みに変えればよいとおもいます。
c.Interior.Pattern = xlPatternGray50

>その横一列をピンク色とかにするのって可能ですか?
もちろん可能なのですが、そもそもシートの全セルを検索対象にしていますが、検索対象とするのは特定の列のみでよいのでしょうか?

この回答への補足

すみません。お手数おかけしております。

検索文字が含まれる列は、3列ほどに限定されています。パターンのところは、ほかの質問者の方への回答などから調べればわかりそうなので、もしあれでしたら…。

補足日時:2003/07/06 22:52
    • good
    • 0

#5です。

お礼の記述に関連して。当方WIN98SEで
エクセル2000でやってます。ですから2000でうまく行かないのは信じられません。OSのバージョンは関係ないと思います。かといって原因を思いつくものはありませんが。
文字列を英数半角、全角等変えてテストしてみてもらえませんか。式をミスタイプしないようにして。B付きとBなし(FIND,FINDB)の関連はないかなあ。
    • good
    • 0
この回答へのお礼

ありがとうございました。
B付き、Bなしも試してみます。
半角、全角は両方試してみたのですけど…。

お礼日時:2003/07/06 22:51

こんにちは。

maruru01です。

条件付き書式で、以下のような式もあります。

「数式が」
「=COUNTIF(A1,"*abc*")>0」
    • good
    • 0
この回答へのお礼

わたしがあほなせいなのか、できません。
アスタリスクって必要なんですよね?

お礼日時:2003/07/04 15:40

1つの同じシート内の操作に限られますが、


(やって見るとCTRLキーを押しながら、別のシートタブを次々クリックすると、同一区画の範囲指定で良ければ、2以上シート間でも1回の下記の操作で書式設定ができました。)
(1)「特定の文字列を含む」を問題にする、セルを範囲指定する。
(2)書式-条件付き書式-「数式が」を選ぶ
(3)数式のボックスに
=FIND("dd",A2)>0と入れる。(仮にddを含むを考える)。
(4)書式を指定する。「パターン」のタブをクリックして色を指定。
(5)「OK」をクリック
これでddを含むセル(だけ)の色が変わります。
検索にはFIND,FINDB,SEARCH,SEARCHBがありますので
違いを調べて、適当なものを使ってください。
    • good
    • 0
この回答へのお礼

ありがとうございました。さっそくやってみました。
OSがXPだとうまくいくのですが、2000だと、
なぜか処理できません。
ファイルの書式設定のせいなのかなと思うのですが…。

お礼日時:2003/07/04 15:38

#3の方と同じですが...



[数式が] =ISERROR(FIND("検索文字",対象セル))=FALSE
    • good
    • 0

条件付き書式で「含む」ですと、こんな感じでどうでしょうか。



例: セルA1の文字列に"abc" が含まれているとき

[数式が] =LEN(A1)<>LEN(SUBSTITUTE(A1,"abc",""))


300ファイルもあるのに、こんなことでいいのかな? と気にはなりますが・・・
詳しい状況が解りませんので、そこには触れません。
    • good
    • 0

#1です。


少しちがってました。
1)編集→置換でオプションを押して下さい。
2)検索する文字列と置換後の文字列を同じ文字にして、置換後の書式でセルの色を指定して下さい。
これで置換すると指定文字が含まれているセルの色が変わります。書式設定により文字色を変えたりすることもできます。
くれぐれも置換後の文字を同じにして下さい。
    • good
    • 0

エクセル2002ですが、編集の検索で書式を設定するところがあるので、そこで設定するとできると思います。

    • good
    • 0
この回答へのお礼

すみません。明記してなかったのですが、エクセルは2000を使ってます。

お礼日時:2003/07/04 15:34

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