実現したいこと
参考:https://teratail.com/questions/303318
上記を参考に
sheet1 E列の注文番号とsheet2 A列の注文番号が一致している場合
かつ
sheet1 Q列の日付とsheet2 E列の日付が一致している場合
に、sheet1 E列の注文番号の背景を赤色にしたいです。
該当のソースコード
VBA
1Sub 日付が一致しているかチェック(ByVal clear_flag As Boolean) 2 Dim x As Long 3 Dim i As Long 4 With Sheets("Sheet1") 5 x = .UsedRange.Cells(.UsedRange.count).Row 6 If clear_flag = True Then 7 .Range("Q2:Q" & x).Interior.Pattern = xlNone 8 End If 9 For i = x To 2 Step -1 10 If Sheets("Sheet2").Range("E:E").Find(What:=.Cells(i, 17), LookAt:=xlWhole) Then 11 .Cells(i, 5).Interior.Color = RGB(255, 0, 0) 12 End If 13 Next i 14 End With 15End Sub
困っていること
日付はAs Dataを使用するかと思いますが、修正する箇所が分からず困っておりますので、ご教授いただけますと幸いです。
提示のコードではどういう問題があるんでしょうか。
そして、それをどうしたいということなんでしょう
提示のコードではどういう問題があるんでしょうか。
→オブジェクト変数またはWithブロック変数が設定されていません。というエラーが発生してしまいます。
そして、それをどうしたいということなんでしょう
→実現したい事に記載させていただきましたが
sheet1 Q列の日付とsheet2 E列の日付が一致している場合は、sheet1 E列の背景を赤色にしたいです。
そのエラーが発生したときに、エラーダイアログのデバッグボタンを押したとき、どの行が反転表示されますか。
hatena19さん
そのエラーが発生したときに、エラーダイアログのデバッグボタンを押したとき、どの行が反転表示されますか。
→下記になります。
If Sheets("Sheet2").Range("E:E").Find(What:=.Cells(i, 17), LookAt:=xlWhole) Then
また記載が漏れていたので、実現したい事に追記させていいただきましたが
sheet1 E列の注文番号とsheet2 A列の注文番号が一致している場合
かつ
sheet1 Q列の日付とsheet2 E列の日付が一致している場合
に、sheet1 E列の注文番号の背景を赤色にしたいです。
回答4件
あなたの回答
tips
プレビュー