Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi,
Just looking for a way to cut down on some nested if statements. Currently have the following: If theRunner < Empty Then If theRunner < "runner" Then If theRunner < "scr" Then Range("H1").Select Do Until Trim(LCase(ActiveCell)) = theRunner ActiveCell.Offset(1, 0).Select Loop wOutSht.Cells(runnerOSet, "AJ").Value = ActiveCell.Offset(0, -7).Value End If End If End If Is there a way to get the first 3 lines into 1? Basically want it to ignore empty cells and those containing the strings "runner" or "scr". TIA |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I like this:
if therunner = "" _ or therunner = "runner" _ or therunner = "scr" then 'do nothing else 'do the real work end if But you could use: if therunner < "" _ and therunner < "runner" _ and therunner < "scr" then 'do the real work end if But sometimes with And/negatives, it gets confusing (well, for me, anyway). "Mark K." wrote: Hi, Just looking for a way to cut down on some nested if statements. Currently have the following: If theRunner < Empty Then If theRunner < "runner" Then If theRunner < "scr" Then Range("H1").Select Do Until Trim(LCase(ActiveCell)) = theRunner ActiveCell.Offset(1, 0).Select Loop wOutSht.Cells(runnerOSet, "AJ").Value = ActiveCell.Offset(0, -7).Value End If End If End If Is there a way to get the first 3 lines into 1? Basically want it to ignore empty cells and those containing the strings "runner" or "scr". TIA -- Dave Peterson |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
untested:
Sub test() If theRunner < Empty And theRunner < "runner" And theRunner < "scr" Then Range("H1").Select Do Until Trim(LCase(ActiveCell)) = theRunner ActiveCell.Offset(1, 0).Select Loop wOutSht.Cells(runnerOSet, "AJ").Value = ActiveCell.Offset(0, -7).Value End If End Sub -- Gary "Mark K." wrote in message ... Hi, Just looking for a way to cut down on some nested if statements. Currently have the following: If theRunner < Empty Then If theRunner < "runner" Then If theRunner < "scr" Then Range("H1").Select Do Until Trim(LCase(ActiveCell)) = theRunner ActiveCell.Offset(1, 0).Select Loop wOutSht.Cells(runnerOSet, "AJ").Value = ActiveCell.Offset(0, -7).Value End If End If End If Is there a way to get the first 3 lines into 1? Basically want it to ignore empty cells and those containing the strings "runner" or "scr". TIA |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
That's where I went wrong, tried using AND but didn't include the extra
"theRunner <" between each Cheers GKeramidas wrote: untested: Sub test() If theRunner < Empty And theRunner < "runner" And theRunner < "scr" Then Range("H1").Select Do Until Trim(LCase(ActiveCell)) = theRunner ActiveCell.Offset(1, 0).Select Loop wOutSht.Cells(runnerOSet, "AJ").Value = ActiveCell.Offset(0, -7).Value End If End Sub |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
That's why I like to use the "or's" and ='s. And just put the code in the Else
portion. "Mark K." wrote: That's where I went wrong, tried using AND but didn't include the extra "theRunner <" between each Cheers GKeramidas wrote: untested: Sub test() If theRunner < Empty And theRunner < "runner" And theRunner < "scr" Then Range("H1").Select Do Until Trim(LCase(ActiveCell)) = theRunner ActiveCell.Offset(1, 0).Select Loop wOutSht.Cells(runnerOSet, "AJ").Value = ActiveCell.Offset(0, -7).Value End If End Sub -- Dave Peterson |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Nested IF statements | Excel Discussion (Misc queries) | |||
Nested IF statements | Excel Worksheet Functions | |||
Nested IF statements | Excel Programming | |||
Nested If Statements | Excel Worksheet Functions | |||
what is the max no. of nested Ifs can an If Statements have in EXC | Excel Discussion (Misc queries) |