Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I have a named range "NUMBER". When its value is 5, 10, 15, 20, 25, 30 or 35
I want to run sub CopyAggregate(). Is there a more elegant way to write this? If Range("NUMBER").Value = 5 Then CopyAggregate ElseIf Range("NUMBER").Value = 10 Then CopyAggregate ElseIf Range("NUMBER").Value = 15 Then CopyAggregate ElseIf Range("NUMBER").Value = 20 Then CopyAggregate ElseIf Range("NUMBER").Value = 25 Then CopyAggregate ElseIf Range("NUMBER").Value = 30 Then CopyAggregate ElseIf Range("NUMBER").Value = 35 Then CopyAggregate End If Thanks for any suggestions. -- Jim T |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Try something like this:
'--------Start of Code------------ Select Case Range("number").Value Case Is = 5, 10, 15, 20, 25, 30 CopyAggregate Case Else MsgBox "Does not meet criteria" End Select '--------End of Code------------ Is that something you can work with? *********** Regards, Ron XL2002, WinXP "Jim Tibbetts" wrote: I have a named range "NUMBER". When its value is 5, 10, 15, 20, 25, 30 or 35 I want to run sub CopyAggregate(). Is there a more elegant way to write this? If Range("NUMBER").Value = 5 Then CopyAggregate ElseIf Range("NUMBER").Value = 10 Then CopyAggregate ElseIf Range("NUMBER").Value = 15 Then CopyAggregate ElseIf Range("NUMBER").Value = 20 Then CopyAggregate ElseIf Range("NUMBER").Value = 25 Then CopyAggregate ElseIf Range("NUMBER").Value = 30 Then CopyAggregate ElseIf Range("NUMBER").Value = 35 Then CopyAggregate End If Thanks for any suggestions. -- Jim T |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
SELECT Case Range("NUMBER").Value
Case 5, 10, 15, 20, 25, 30, 35 CopyAggregate Case Else 'Do something or do nothing End Select "Jim Tibbetts" wrote in message ... I have a named range "NUMBER". When its value is 5, 10, 15, 20, 25, 30 or 35 I want to run sub CopyAggregate(). Is there a more elegant way to write this? If Range("NUMBER").Value = 5 Then CopyAggregate ElseIf Range("NUMBER").Value = 10 Then CopyAggregate ElseIf Range("NUMBER").Value = 15 Then CopyAggregate ElseIf Range("NUMBER").Value = 20 Then CopyAggregate ElseIf Range("NUMBER").Value = 25 Then CopyAggregate ElseIf Range("NUMBER").Value = 30 Then CopyAggregate ElseIf Range("NUMBER").Value = 35 Then CopyAggregate End If Thanks for any suggestions. -- Jim T |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
maybe like this
With Range("NUMBER") If (.Value Mod 5 = 0) And (.Value 0) And (.Value < 36) Then CopyAggregate End With -- Hope that helps. Vergel Adriano "Jim Tibbetts" wrote: I have a named range "NUMBER". When its value is 5, 10, 15, 20, 25, 30 or 35 I want to run sub CopyAggregate(). Is there a more elegant way to write this? If Range("NUMBER").Value = 5 Then CopyAggregate ElseIf Range("NUMBER").Value = 10 Then CopyAggregate ElseIf Range("NUMBER").Value = 15 Then CopyAggregate ElseIf Range("NUMBER").Value = 20 Then CopyAggregate ElseIf Range("NUMBER").Value = 25 Then CopyAggregate ElseIf Range("NUMBER").Value = 30 Then CopyAggregate ElseIf Range("NUMBER").Value = 35 Then CopyAggregate End If Thanks for any suggestions. -- Jim T |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Norman - Thanks for the help. I have never seen Select Case before. I think
it will work just fine. -- Jim T "Norman Yuan" wrote: SELECT Case Range("NUMBER").Value Case 5, 10, 15, 20, 25, 30, 35 CopyAggregate Case Else 'Do something or do nothing End Select "Jim Tibbetts" wrote in message ... I have a named range "NUMBER". When its value is 5, 10, 15, 20, 25, 30 or 35 I want to run sub CopyAggregate(). Is there a more elegant way to write this? If Range("NUMBER").Value = 5 Then CopyAggregate ElseIf Range("NUMBER").Value = 10 Then CopyAggregate ElseIf Range("NUMBER").Value = 15 Then CopyAggregate ElseIf Range("NUMBER").Value = 20 Then CopyAggregate ElseIf Range("NUMBER").Value = 25 Then CopyAggregate ElseIf Range("NUMBER").Value = 30 Then CopyAggregate ElseIf Range("NUMBER").Value = 35 Then CopyAggregate End If Thanks for any suggestions. -- Jim T |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Ron - Thanks for the help. I have never seen Select Case before. I think it
will work just fine. -- Jim T "Ron Coderre" wrote: Try something like this: '--------Start of Code------------ Select Case Range("number").Value Case Is = 5, 10, 15, 20, 25, 30 CopyAggregate Case Else MsgBox "Does not meet criteria" End Select '--------End of Code------------ Is that something you can work with? *********** Regards, Ron XL2002, WinXP "Jim Tibbetts" wrote: I have a named range "NUMBER". When its value is 5, 10, 15, 20, 25, 30 or 35 I want to run sub CopyAggregate(). Is there a more elegant way to write this? If Range("NUMBER").Value = 5 Then CopyAggregate ElseIf Range("NUMBER").Value = 10 Then CopyAggregate ElseIf Range("NUMBER").Value = 15 Then CopyAggregate ElseIf Range("NUMBER").Value = 20 Then CopyAggregate ElseIf Range("NUMBER").Value = 25 Then CopyAggregate ElseIf Range("NUMBER").Value = 30 Then CopyAggregate ElseIf Range("NUMBER").Value = 35 Then CopyAggregate End If Thanks for any suggestions. -- Jim T |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I'm glad I could help.....and thanks much for the feedback!
*********** Regards, Ron XL2002, WinXP "Jim Tibbetts" wrote: Ron - Thanks for the help. I have never seen Select Case before. I think it will work just fine. -- Jim T "Ron Coderre" wrote: Try something like this: '--------Start of Code------------ Select Case Range("number").Value Case Is = 5, 10, 15, 20, 25, 30 CopyAggregate Case Else MsgBox "Does not meet criteria" End Select '--------End of Code------------ Is that something you can work with? *********** Regards, Ron XL2002, WinXP "Jim Tibbetts" wrote: I have a named range "NUMBER". When its value is 5, 10, 15, 20, 25, 30 or 35 I want to run sub CopyAggregate(). Is there a more elegant way to write this? If Range("NUMBER").Value = 5 Then CopyAggregate ElseIf Range("NUMBER").Value = 10 Then CopyAggregate ElseIf Range("NUMBER").Value = 15 Then CopyAggregate ElseIf Range("NUMBER").Value = 20 Then CopyAggregate ElseIf Range("NUMBER").Value = 25 Then CopyAggregate ElseIf Range("NUMBER").Value = 30 Then CopyAggregate ElseIf Range("NUMBER").Value = 35 Then CopyAggregate End If Thanks for any suggestions. -- Jim T |
#8
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Thanks Vergel. I've been looking in VB help trying to get my brain around the
Mod operator. I don't understand how it works yet. I will keep trying. -- Jim T "Vergel Adriano" wrote: maybe like this With Range("NUMBER") If (.Value Mod 5 = 0) And (.Value 0) And (.Value < 36) Then CopyAggregate End With -- Hope that helps. Vergel Adriano "Jim Tibbetts" wrote: I have a named range "NUMBER". When its value is 5, 10, 15, 20, 25, 30 or 35 I want to run sub CopyAggregate(). Is there a more elegant way to write this? If Range("NUMBER").Value = 5 Then CopyAggregate ElseIf Range("NUMBER").Value = 10 Then CopyAggregate ElseIf Range("NUMBER").Value = 15 Then CopyAggregate ElseIf Range("NUMBER").Value = 20 Then CopyAggregate ElseIf Range("NUMBER").Value = 25 Then CopyAggregate ElseIf Range("NUMBER").Value = 30 Then CopyAggregate ElseIf Range("NUMBER").Value = 35 Then CopyAggregate End If Thanks for any suggestions. -- Jim T |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
I need to simplify this... | Excel Worksheet Functions | |||
Nested IF statements - simplify? | Excel Programming | |||
Simplify | Excel Programming | |||
A way to simplify this please | Excel Programming | |||
operator statements, shorting when reusing one of the statements? | Excel Programming |