+ Reply to Thread
Results 1 to 7 of 7

Mod function not working right?

  1. #1
    DMB
    Guest

    Mod function not working right?

    this formula is giving me an error. I need the remainder. Am I doing this
    wrong?

    26 Mod 3

  2. #2
    Tom Ogilvy
    Guest

    Re: Mod function not working right?

    from the immediate window:

    ? 26 Mod 3
    2


    seems to work fine.

    --
    Regards,
    Tom Ogilvy


    "DMB" <[email protected]> wrote in message
    news:[email protected]...
    > this formula is giving me an error. I need the remainder. Am I doing this
    > wrong?
    >
    > 26 Mod 3




  3. #3
    JE McGimpsey
    Guest

    Re: Mod function not working right?

    Hard to know if you're doing it wrong, since you don't say what you're
    trying to do.

    Mod is an operator, so it only makes sense in an assignment statement.
    For instance:

    a = 26 Mod 3

    returns 2 to the variable a.

    A bare

    26 Mod 3

    doesn't make sense - it's like putting the number 2 as a statement.

    In article <[email protected]>,
    DMB <[email protected]> wrote:

    > this formula is giving me an error. I need the remainder. Am I doing this
    > wrong?
    >
    > 26 Mod 3


  4. #4
    bigwheel
    Guest

    RE: Mod function not working right?

    Try =MOD(26,3)

    "DMB" wrote:

    > this formula is giving me an error. I need the remainder. Am I doing this
    > wrong?
    >
    > 26 Mod 3


  5. #5
    Tim Williams
    Guest

    Re: Mod function not working right?

    What answer are you expecting?

    Tim

    "DMB" <[email protected]> wrote in message
    news:[email protected]...
    > this formula is giving me an error. I need the remainder. Am I doing this
    > wrong?
    >
    > 26 Mod 3




  6. #6
    DMB
    Guest

    Re: Mod function not working right?

    Function LumberLabel(width As Range, height As Range, material As Range,
    spacing As Range) As String

    Dim myWidth As String
    Dim myHeight As String
    Dim myMaterial As String
    Dim mySpacing As String
    myWidth = width
    myHeight = height
    myMaterial = material
    mySpacing = spacing

    'Material type: DF #2, DF#1, PSL, ect.

    'Add spacing ie @ 16" O.C. , @ 25" O.C.
    If mySpacing <> 0 And mySpacing <> "" Then mySpacing = " @ " & mySpacing
    & " in oc"

    'Lumber sizing
    Dim x As Integer
    'x = width Mod 0.5

    Dim aWidth As Double
    aWidth = Round(myWidth)
    If ((aWidth / 2) - (aWidth \ 2)) <> 0 Then
    LumberLabel = "1. Will not work (myWidth / 2) = " & (myWidth / 2) &
    " and myWidth \ 2 = " & (myWidth \ 2)
    'ElseIf x <> 0 Then
    LumberLabel = "2. x <> 0 = " & width Mod 0.5
    Else
    LumberLabel = myWidth & " x " & myHeight & myMaterial & mySpacing
    End If
    'This is giving me the error
    'width Mod 0.5
    'and this
    LumberLabel = "2. = " & 19.6 Mod 3.2

    'A = 19 Mod 6.7

    End Function

  7. #7
    Tom Ogilvy
    Guest

    Re: Mod function not working right?

    ? 19.6 Mod 3.2
    2

    the equivalent of 20 mod 3

    which is the expected behavior as stated in help on the MOD function. So
    you still didn't answer what you expect?

    width mod 0.5 gives me a divide by zero, so 0.5 is rounded down to 0 I
    suspect. (it is probably stored as .49999999999)

    I don't think the mod operator will work for you.
    --
    Regards,
    Tom Ogilvy

    "DMB" <[email protected]> wrote in message
    news:[email protected]...
    > Function LumberLabel(width As Range, height As Range, material As Range,
    > spacing As Range) As String
    >
    > Dim myWidth As String
    > Dim myHeight As String
    > Dim myMaterial As String
    > Dim mySpacing As String
    > myWidth = width
    > myHeight = height
    > myMaterial = material
    > mySpacing = spacing
    >
    > 'Material type: DF #2, DF#1, PSL, ect.
    >
    > 'Add spacing ie @ 16" O.C. , @ 25" O.C.
    > If mySpacing <> 0 And mySpacing <> "" Then mySpacing = " @ " &

    mySpacing
    > & " in oc"
    >
    > 'Lumber sizing
    > Dim x As Integer
    > 'x = width Mod 0.5
    >
    > Dim aWidth As Double
    > aWidth = Round(myWidth)
    > If ((aWidth / 2) - (aWidth \ 2)) <> 0 Then
    > LumberLabel = "1. Will not work (myWidth / 2) = " & (myWidth / 2)

    &
    > " and myWidth \ 2 = " & (myWidth \ 2)
    > 'ElseIf x <> 0 Then
    > LumberLabel = "2. x <> 0 = " & width Mod 0.5
    > Else
    > LumberLabel = myWidth & " x " & myHeight & myMaterial & mySpacing
    > End If
    > 'This is giving me the error
    > 'width Mod 0.5
    > 'and this
    > LumberLabel = "2. = " & 19.6 Mod 3.2
    >
    > 'A = 19 Mod 6.7
    >
    > End Function




+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1