• 締切済み

EXCEL VBAについて

EXCEL VBAに詳しい方よろしくお願いいたします ユーザーからフォルダー指定してもらい そのフォルダー内に入っているすべてのブック、すべてのシートの検索、 (シート内にオートシェイプの中に文字を入れたものもアリ。検索対象。) そして、その検索にヒットしたシート名とブック名を別のテキストファイルに吐き出す。 それとは別に検索に引っかかった文字を青に置き換える(EXCELシート内)事は可能でしょうか? 文字の色は変わるのですがオートシェイプ内の色が変えられません。 何時間がんばりましたが、経験不足のためどうもうまくいきません。 どなたか親切な方、お教えいただけたら幸いです。

みんなの回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.1

こんにちは。 >何時間がんばりましたが、経験不足のためどうもうまくいきません。 できれば、多少とも「がんばった」という内容を教えてくれるとありがたいのですが。そのほうが書きやすいですね。 一応、オートシェイプ内の色の色を変えるスモールサンプルを出しておきます。 Sub TestSample1()   Dim shp As Shape   Dim SearchWd As String '---検索文字-----------   SearchWd = "Excel" '----------------------   With ActiveSheet    For Each shp In .Shapes      If shp.DrawingObject.ShapeRange.Type = msoAutoShape Then       s_FindTextInShape shp, SearchWd      End If    Next shp   End With End Sub Sub s_FindTextInShape(shp As Shape, SearchWd As String) Dim num As Integer   With shp.DrawingObject    num = InStr(.Text, SearchWd)    If num > 0 Then      .Characters(Start:=num, Length:=Len(SearchWd)).Font.ColorIndex = 5 '青    End If   End With End Sub

pocopen0518
質問者

お礼

回答ありがとうございました。 コードが長すぎでのせることが出来ませんでした。 参考にがんばってみたいと思います。

関連するQ&A