2017年05月01日
ExcelVBA入門,検索,エラーの対処
MTOSやXOOPSを簡単ワンクリックインストール!
マルチドメイン対応レンタルサーバー【シックスコア】
マイクロソフトアクセスの記事はこちら
人気ブログランキングへ
にほんブログ村
エラーの対処
※もし見つからなかった場合はどうなるのか。
検索文字に「地理」を入力してプログラムを実行すると、下のようになります。
上記のように「実行時エラー」という表示が出てしまいます。
Findメソッドは、検索値が見つからない場合、「Nothing」という状態を返します。
ですからFindメソッドを使用する場合は「見つからなかった」場合の処理を
考えておく必要があります。
上記のように修正しました。
Sub 検索4()
Dim kw As Variant
Dim mc As Range
kw = Sheets("sheet1").Range("f2")
Set mc = Range("A1").CurrentRegion.Find(what:=kw)
If mc Is Nothing Then
MsgBox "見つかりませんでした"
Else
mc.Select
End If
End Sub
ここで「CurrentRegion」という記述がありますね。
「Range("A1").CurrentRegion」これでセットになり、A1を含んだ入力済みの
セルの範囲を選択します。
この場合ですと、A1からC6の範囲が入力済みセルのひとかたまりですね。
このプログラムを実行すると
上記のようになり、「OK」するとプログラムは終了します。
マルチドメイン対応レンタルサーバー【シックスコア】
マイクロソフトアクセスの記事はこちら
人気ブログランキングへ
にほんブログ村
エラーの対処
※もし見つからなかった場合はどうなるのか。
検索文字に「地理」を入力してプログラムを実行すると、下のようになります。
上記のように「実行時エラー」という表示が出てしまいます。
Findメソッドは、検索値が見つからない場合、「Nothing」という状態を返します。
ですからFindメソッドを使用する場合は「見つからなかった」場合の処理を
考えておく必要があります。
上記のように修正しました。
Sub 検索4()
Dim kw As Variant
Dim mc As Range
kw = Sheets("sheet1").Range("f2")
Set mc = Range("A1").CurrentRegion.Find(what:=kw)
If mc Is Nothing Then
MsgBox "見つかりませんでした"
Else
mc.Select
End If
End Sub
ここで「CurrentRegion」という記述がありますね。
「Range("A1").CurrentRegion」これでセットになり、A1を含んだ入力済みの
セルの範囲を選択します。
この場合ですと、A1からC6の範囲が入力済みセルのひとかたまりですね。
このプログラムを実行すると
上記のようになり、「OK」するとプログラムは終了します。
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/6223927
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック