• ベストアンサー

vbaのFindメソッドで取得するにはどうすれば

A1に「あ」B1に「い」と入れて、 A2に「=A1&B1」としました。 この時、A2は「あい」と表示されます。 今回やりたいことは、 Sub test() Debug.Print Cells.Find(What:=" あい").Row End Sub で、2を返したいのですが、 実行時エラー91になってしまいます。 セル内に該当の文字列がないからだと思いますが、 数式でつなげた文字列を、 vbaのFindメソッドで取得するにはどうすれば良いでしょうか?

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

  • ベストアンサー
  • dogs_cats
  • ベストアンサー率38% (278/717)
回答No.2

実行時91エラーはfindでデータが見つからなかった為だと思われます。 B1のいの後に半角スペースが入っている等で完全一致で無いなどの理由。 下記はfindメソッドでエラー回避方法が記載されてますので参考にされたら如何でしょう。 http://www.relief.jp/itnote/archives/excel-vba-handle-range-find-error.php 私はバージョンは2007ですが、質問の内容で試しましたが、エラーも起きずに行番号表示されました。

LNXDRYOPEJ
質問者

お礼

どうもありがとうございました。

その他の回答 (1)

  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.1

「" あい"」と頭に半角スペースが入ってますがこれはわざとですか? それはともかく 「値」を対象に検索する必要があるかと思います。 Debug.Print Cells.Find(What:="あい", LookIn:=xlValues)

LNXDRYOPEJ
質問者

お礼

どうもありがとうございました。

関連するQ&A