Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
For Loop - If / Or
Hi
I have created a loop, which has an or in the if argument For i = 2 To FinalRow If DATEDIFF("d", Cells(i, 6), Now) < 8 Or DATEDIFF("d", Cells(i, 6), Now) = "" Then Sheets("Project List").Cells(i, 1).Copy Destination:=ActiveWorkbook.Sheets("Slide").Range( "B1") Can someone please explain why this isn't working. I am trying to loop through a range of data and perform actions only on those where cells(i,6) are either blank or the datediff is less than 8 ie a week or less Many thanks in advance Richard |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
For Loop - If / Or
Shouldn't it be
For i = 2 To FinalRow If DATEDIFF("d", Cells(i, 6), Now) < 8 Or Cells(i,6).Value = "" Then Sheets("Project List").Cells(i, 1).Copy Destination:=ActiveWorkbook.Sheets("Slide").Range( "B1") -- --- HTH Bob (there's no email, no snail mail, but somewhere should be gmail in my addy) "Richard" wrote in message ... Hi I have created a loop, which has an or in the if argument For i = 2 To FinalRow If DATEDIFF("d", Cells(i, 6), Now) < 8 Or DATEDIFF("d", Cells(i, 6), Now) = "" Then Sheets("Project List").Cells(i, 1).Copy Destination:=ActiveWorkbook.Sheets("Slide").Range( "B1") Can someone please explain why this isn't working. I am trying to loop through a range of data and perform actions only on those where cells(i,6) are either blank or the datediff is less than 8 ie a week or less Many thanks in advance Richard |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
For Loop - If / Or
First, using datediff with days is kind of overkill. You could just subtract
one from the other. The difference will be in days. with activesheet for i = 2 to finalrow if .cells(i,6).value = "" _ or (date - .cells(i,6).value < 8) then 'do the work end if next i end with Richard wrote: Hi I have created a loop, which has an or in the if argument For i = 2 To FinalRow If DATEDIFF("d", Cells(i, 6), Now) < 8 Or DATEDIFF("d", Cells(i, 6), Now) = "" Then Sheets("Project List").Cells(i, 1).Copy Destination:=ActiveWorkbook.Sheets("Slide").Range( "B1") Can someone please explain why this isn't working. I am trying to loop through a range of data and perform actions only on those where cells(i,6) are either blank or the datediff is less than 8 ie a week or less Many thanks in advance Richard -- Dave Peterson |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Loop to Filter, Name Sheets. If Blank, Exit Loop | Excel Programming | |||
Naming Worksheets - Loop within a loop issue | Excel Programming | |||
(Complex) Loop within loop to create worksheets | Excel Programming | |||
Advancing outer Loop Based on criteria of inner loop | Excel Programming | |||
Problem adding charts using Do-Loop Until loop | Excel Programming |