For and IF statement error

D

don

The following subroutine does not work if the Msgbox is set to
comment. I get a Type mismatch error on the If Datevalue(c) <= date_
line
Yet if I take the comment ' off and it is a live line then it works.

In addition, if I don't use datevalue(c) as part of the If statement ,
rather just use If c <=date_ then it seems to work without the msgbox
line.

Why would I be having this problem???
Thanks

Don


Sub Check_PO_dates()
Dim date_ As Date
'Checks for dates and deletes line items that have
'date = or older then last run
date_ = Sheets("times").Range("g29")
Sheets("PO_scratch").Select
lr = Cells(Rows.Count, "A").End(xlUp).Row
'MsgBox Cells(2, "f").Row
For Each c In Range(Cells(2, "F"), Cells(lr, "F"))
'MsgBox c
If DateValue(c) <= date_ Then
Rows(c.Row).ClearContents
End If
Next
End Sub
 
C

Chip Pearson

Don,

Change

If DateValue(c) <= date_ Then

to
If C.Value <= date_ Then


--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com
 
T

Tom Ogilvy

Sub Check_PO_dates()
Dim date_ As Date
'Checks for dates and deletes line items that have
'date = or older then last run
date_ = Sheets("times").Range("g29")
Sheets("PO_scratch").Select
lr = Cells(Rows.Count, "A").End(xlUp).Row
'MsgBox Cells(2, "f").Row
For Each c In Range(Cells(2, "F"), Cells(lr, "F"))
MsgBox c.Text
if isdate(c) then
If DateValue(c) <= date_ Then
Rows(c.Row).ClearContents
End If
end if
Next
End Sub
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top