あなたの習慣について教えてください!!

教えてください。

sheet1のA列に時間データがあります。A列は書式設定でhh:mm:ss.00にしています。
sheet2のA1に時間を表示しており書式設定でhh:mm:ssにしています。
sheet2のA1と部分一致する時間を、sheet1のA列から検索するマクロを作成しています。
(複数ある場合は初めに該当するセルの行を表示)

sheet2に下記のコードを入力しており、実行すると「オブジェクト変数またはwithブロック変数がされていません」と表示され困っています。
ご教授のほどよろしくお願い致します。

Sub 検索()

Dim Jikan As Date
Dim Row1 As Integer

Jikan = Sheets("sheet2").Cells(1, 1).Value

Row1 = Sheets("sheet1").Range("A:A"). _
Find(What:=Jikan, LookAt:=xlPart).Row

MsgBox Row1

End Sub

A 回答 (1件)

Sub 検索()



Dim Jikan As Date
Dim objRange AS Range
Dim Row1 As Integer

Jikan = Sheets("sheet2").Cells(1, 1).Value

Set objRange = Sheets("sheet1").Range("A:A"). Find(What:=Jikan, LookAt:=xlPart)

’見つからない場合も考慮が必要かも
objRange.Select

Row1=objRange.Row

MsgBox Row1

set objRange = Nothing

End Sub

でどうなりますか?
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。

sheet1を開いているときに実行すると問題ありませんでしたが、sheet2を開いているときに実行するとエラーが発生しました。
そこでobjRange.Selectをsheets("sheet1").selectとしました。
また、見つからない場合のため
if objrange is nothing then
exit sub
end if
を付け加えました。

アドバイスありがとうございました。
今後ともご指導お願い致します。

お礼日時:2014/01/29 22:11

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!