• 締切済み

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

  • Excel VBA 特定の文字を含むシートを移動

    VBA初心者です。 2つのブック(ブック1、ブック2)があり、ブック2でシート名に”●●支店”という文字を含むシートをすべてブック1にコピーしたいです。 支店名はいろいろあるのでinputboxで検索したいです。 VBAを最近実践し始めたところなので、いろいろ調べたものの全く応用がききません。 どなたか教えて頂ける方、よろしくお願いいたします。

  • excel VBA オートシェイプのテキスト段落

    おはようございます。 【オートシェイプ内のテキスト行間を指定するプロパティ】 オートシェイプ内のテキスト行間を指定するプロパティはありますでしょうか? excel 2007で オートシェイプにテキストをいれた場合、 右クリックすると「段落」という項目がでてきて、 オートシェイプ内のテキストの行間を指定できたのですが、 オートシェイプ内のテキストの行間をVBAで指定することはできるのでしょか? (マクロを登録してもなにも記述されていないので、困っています。) 最終的にはアクティブブックの全シートのオートシェイプの行間を変更する VBAにしたいと思っています。 参考URL等あれば教えていただけませんでしょうか? よろしくお願いいたします。

  • 複数のExcelを1つのExcelに

    Excel.xlsの1シート目に、フィールドとデータが入っています。このExcelが担当者ごと複数存在します。 複数のExcelを1フォルダにまとめ、1行目はフィールド・あとは全てデータとして、1つのExcelブックの1シートへまとめることは可能でしょうか? フィールドは38列、行数はブックごと異なり、ブック名も担当者ごと異なります。 いろいろ調べたのですが、VBA初心者の為、VBAを貼り付けて実行してもうまくいきませんでした。 できれば、元ファイルは消さないよう、コピーのみ行いたいと思っています。 フォルダ名は C:\出庫依頼書 です。 どなたかご教授いただけませんでしょうか。

  • VBAでエクセル保存方法

    Excel2003のVBAで保存処理を下記のように行います。  Book.SaveAs ("ファイル名") しかし問題があり、ファイルを開くとVBAで記入更新したシートが 表れず別のシートが最初に表示されます。 一番最後に更新したシートを開いたときに表示される方法は ありますか? よろしくお願いいたします。

  • 同一フォルダの別ブックへのデータ貼り付け(VBA)

    Excel2007・VBAにより、マクロ実行ブック(「親」)の≪Sheet1≫シートにおけるP10:P54に入力されている数値を、「親」と同一フォルダにある複数の別ブック(「子」)の≪Sheet1≫シートのP10:P54に貼り付けたいです。 なお、同一フォルダには「子」とは別に本処理対象としない≪Sheet1≫シートが存在しない他のブックも存在しています。 考えたり幾度か検索したりしたのですが、希望に合った内容が出てきませんでした。 宜しくお願い致します。

  • EXCEL VBAについて

    お世話になります。 EXCEL VBAで指定したフォルダのEXCELブックが1つでもオープンされているかどうか知りたいのですが、可能でしょうか。 よろしくお願いいたします。

  • Excel VBA ファイルをまとめる

    Excel2003にてフォルダにある複数ファイル(8個)の各1番左のシートを 指定したファイルにまとめるVBAを組みたいと思います。 まとめる際、ファイル名の一部を取得し、シート名にしたいのですが可能でしょうか? 例: ファイル名:20110927_△△△△株式会社.xls ⇒ シート名:△△△△株式会社 ※ファイルの個数は固定ですが、年月の部分は変わります。 簡単なVBAの経験しかなく、キーワード検索でもしっくりこないものばかりで どのようにコードを記述してよいのか非常に困っています。

  • エクセルVBAについて

    どのジャンルで投稿すれば良いか分からなかったのでここに投稿しました。私はエクセルVBAの機能を利用して簡単なソフトを作っているのですが、どうしても分からないことがあるので教えて下さい。あるシートのある範囲内に描かれているオブジェクト(例えば直線123,図123,オートシェイプ123)をすべて選択して一括削除するプログラムが分かりません。詳しい方教えて下さい。

  • Excel VBA コメントに関して

    Excel2003を使用しています。 VBAになるのかは定かではないのですが Excelの機能に「コメント」を付ける機能がありますよね セルに対してカーソルを合わすことで表示される黄色い枠のコメントのことをしるす。 これをオートシェイプやコマンドボタン等のオブジェクトに対してカーソルを合わせることに よってこのコマンドがなんなのかのコメントを付けたい場合Excelでできるのでしょうか? もし、できるとしたならばどのようにしたらいいのでしょうか? VBAを使いできるのか、もっと楽な方法があるのか 教えて頂きたいのです。 ご教授願えないでしょうか、宜しくお願いします(人>д<*ペコ謝) ※補足※ コマンドボタンやオートシェイプでテキストを入れてしまうとボタン自体が入れる文字数によって大きくなってしまうのでできるだけ小さいボタンを作り補足事項やヘルプとして使用したい。 コマンドボタンにはVBAプログラムを組むとして、オートシェイプならば、図形にマクロを登録するとして、カーソルを合わした時のみコメントを表示させたいということです。

  • Excelでブック名とシート名の取得方法は?

    Excel2000のVBAで、そのパソコンで開いている全てのEXCELブック名とそれらにあるシート名を取得したいのですが、そんなことはできるのでしょうか?

専門家に質問してみよう