+ Reply to Thread
Results 1 to 6 of 6

Works fine in debug, but...

  1. #1
    DiBaco
    Guest

    Works fine in debug, but...

    Hi all,

    I can't get my head around why this simple piece of code won't work in
    release, but does in step-by-step debugging. This code is part of a
    userform with two calendars on it.

    Ideas anyone?

    p.s. I'm guessing the Analysis Toolpack function "networkdays" is the
    cause, but why?

    Private Sub CalendarEnd_Click()

    Dim sDay As Date
    Dim eDay As Date
    Dim nwDays As Integer

    On Error GoTo Skip
    sDay = CalendarStart.Value
    eDay = CalendarEnd.Value

    nwDays = networkdays(sDay, eDay)
    If nwDays < 1 Then GoTo Skip
    UserForm2.TextBox2.Value = nwDays

    Exit Sub


  2. #2
    Valued Forum Contributor tony h's Avatar
    Join Date
    03-14-2005
    Location
    England: London and Lincolnshire
    Posts
    1,187
    A classic problem that is evidenced by code working when in debug but not when run straight through is that there are other process that need to be given processor time to complete. To do this programmatically you use the doevents. Finding whereto put it is a bit more difficult but with this short piece of code you could put a doevents between each line.

    If that works you could try removing them one by one until it goes wrong again then you will know which is the important one (or more).

    Hope this helps. let us know how you get on.

    regards,
    Anthony

  3. #3
    DiBaco
    Guest

    Re: Works fine in debug, but...

    Anthony ,
    Thanks for the suggestions.
    Tried this, no joy.

    I've determined that the line nwDays = Networkdays(sDay, eDay) is
    causing the error, Runtime 13, type mismatch.

    I've tried other otions, like

    eDay = CDate(eDay) and
    eDay = Format(eDay, "dd/mm/yyyy")

    and also tried Variant, Long etc. for the nwDays variable

    Any other suggestions are more than welcome.


  4. #4
    Peter T
    Guest

    Re: Works fine in debug, but...

    Are you sure sDay & eDay both evaluate to +ve numbers

    try
    nwDays = networkdays(Date, Date + 21)

    Regards
    Peter T


    "DiBaco" <[email protected]> wrote in message
    news:[email protected]...
    > Anthony ,
    > Thanks for the suggestions.
    > Tried this, no joy.
    >
    > I've determined that the line nwDays = Networkdays(sDay, eDay) is
    > causing the error, Runtime 13, type mismatch.
    >
    > I've tried other otions, like
    >
    > eDay = CDate(eDay) and
    > eDay = Format(eDay, "dd/mm/yyyy")
    >
    > and also tried Variant, Long etc. for the nwDays variable
    >
    > Any other suggestions are more than welcome.
    >




  5. #5
    DiBaco
    Guest

    Re: Works fine in debug, but...

    sorry to say, same error

    tries switching values with
    If eDay < sDay Then

    and If eDay > sDay Then

    same error.

    will try to build something from scratch and see what happens..

    Thanks for your efforts


  6. #6
    DiBaco
    Guest

    Re: Works fine in debug, but...

    building from scratch doesn't give the error.... weird

    guess I'll have to redo the whole thing...

    :-(


+ 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