• ベストアンサー

エクセルのVBAを使って、セルの値の検索をしたいと思ってます。

エクセルのVBAを使って、セルの値の検索をしたいと思ってます。 ですが、cells.findのように、アクティブセルが移動することなしに、値のみを取得し、変数に格納したいと思っていますが、どうすればよいか、見当がつきません。 繰り返し構文を使えば、検索はできますが、それだと、無駄に重くなりそうなので、何か良い方法はありませんか?

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

例: sub macro1()  dim h as range  set h = cells.find(what:=検索値)  if not h is nothing then   msgbox h.address  end if end sub >繰り返し構文を使えば、検索はできますが Excel VBEの画面でVBAのヘルプからFind メソッドの使用例を見てみると,どんぴしゃであなたの疑問の直接の回答例が載っています。 ヘルプを調べるには,VBE画面で表示メニューからオブジェクトブラウザを出してFindを検索,みつけたら?ボタンをクリックします。 または標準モジュールなどに適当に「cell.find」のサンプルマクロを書き込み,findの言葉のところに編集カーソル(Iカーソル)を入れてF1キーを押します。 マクロの勉強では「ヘルプを熟読する」のは(マクロの自動記録と並んで)絶対に外せない勉強方法です。多くの場合に楽しようとネットで当てもなくさまよったりするよりも,遙かに効果的に知識を得られますので,ヘルプの勉強の仕方をマスターしてください。

roadstar77
質問者

お礼

ありがとうございます、実は、前のバージョンまでのヘルプと、今のエクセルのヘルプの使い方の違いがいまいち分からず、困っておりました。またエクセル自体の使い方もずいぶん変わってましたので、まずそこから苦労させられました。エクセルを使うのも5年ぶりということもあり、一からマクロの勉強をしていた次第です。 なんとかヘルプの見方がわかりましたので、さっそく検索してみますと、まさにドンピシャの回答が載っており、大変参考になりました。ありがとうございます

すると、全ての回答が全文表示されます。

関連するQ&A