前提・実現したいこと
今Excel上のB19:B387に日付のデータが入っています。
B19を開始日として1日ずつ加算された日付がB387まで約1年間入っています。
C6セルに日付を入力し、その日付から3日先以降の行を消す
処理をVBAで作成しています。
B19からB387には一意の日付のデータが入っており、途中に空白のデータは
存在しません。
C6(終了日と呼ぶ)セルと一致する行番号を取得しようと思うのですが、型が一致しません。
findメソッドのwhatはvariant型を指定しなければならないと思うのですが、日付のデータが
入っているセルは指定できないのでしょうか。
日付型のデータのセルをvariant型に変換しなくてはいけませんか?
型が一致しません
該当のソースコード
VBA
1Sub run() 2 3 Sheets("sheet1").Activate 4 5Dim r1 As Range 6Dim r3 As Range 7 8'終了日と一致する行番号を取得 9Set r1 = Range("B19:B387").Find(What:=Cells(6, 3).Value).Row 10 11 12'終了日から3行後の行番号を代入 13r2 = r1 + 3 14 15' セル「B19」の下端の行を取得 16Set r3 = Range("B19").End(xlDown).EntireRow 17 18 19'掲載終了日の3行したから下の行を全て削除 20Range(r2 & ":" & r3).Delete 21 22End Sub 23 24
試したこと
Set r1 = Range("B19:B387").Find(What:=Cells(6, 3).Value).Row
の処理で(What:=Range("C6").Value)とRangeでもやってみましたが駄目でした。
補足情報(FW/ツールのバージョンなど)

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/03/13 05:44
2018/03/13 05:46
2018/03/13 05:54
2018/03/13 06:49 編集
2018/03/13 07:05
2018/03/13 07:16
2018/03/13 08:39