Adding IF statement to custom function (VBA)?

T

theseandavis

Hey guys,

I dont know much about VBA and programming, so this may be a dumb
question:)

I have a custom function I created here in VBA and I need to add some
conditionality to it. Here is the part of the code I would like to
manipulate:

**************
Public Function NextInspection(SinceLastInspection, SinceLastM3,
ObjectClass, ObjectCat) As String

Dim KM As Variant
Dim CycleNumber As Integer

KM = SinceLastM3 - SinceLastInspection + 6000

CycleNumber = Round(KM / 6000, 0)

If ObjectClass = "TROL" Then

Select Case CycleNumber

Case 1 To 8: NextInspection = "MINOR-T"
Case 9: NextInspection = "MAJOR3-T"
Case Else: NextInspection = "INVALID NEST-CHECK DETAIL"

End Select
.....
******************

What I would like to tell this to do is, for every time that
CycleNumber exceeds 9, subtract 9 (eg.9 is the max, but may potentially
exceed 9, so if it were to read 10 i would like it to instead read '1'
and return "MINOR-T")

Ive tried adding it in with my own knowledge, but I dont know how to do
it and keep getting errors. Any help is appreciated!
 
D

Dave Peterson

Maybe...

Select Case CycleNumber mod 9

Case 1 To 8: NextInspection = "MINOR-T"
Case 0: NextInspection = "MAJOR3-T"
Case Else: NextInspection = "INVALID NEST-CHECK DETAIL"

End Select
 
T

theseandavis

Great idea! But it didn't do anything:)

For a perhaps better idea of what Im trying to do, here is one of my
attempts with zero knowledge of VBA (sheepish)
.....
If ObjectClass = "TROL" Then

If CycleNumber > 9 Then
CycleNumber -9
Else: CycleNumber
End If

Select Case CycleNumber

Case 1 To 8: NextInspection = "MINOR-T"
Case 9: NextInspection = "MAJOR3-T"
Case Else: NextInspection = "INVALID NEST-CHECK DETAIL"
End Select
 
D

Dave Peterson

What was cycleNumber when "it didn't do anything"?

What happened to NextInspection?
 

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