+ Reply to Thread
Results 1 to 3 of 3

[SOLVED] How take form based data entry back to main sub?

  1. #1
    Chet
    Guest

    [SOLVED] How take form based data entry back to main sub?

    Hi -
    I am new to using 'custom dialog boxes'. I am trying to take some data
    from my user form once I have hit the OK button on the userform and
    bring those entries back to my main sub where I will use this data to
    run the rest of my code. I am able to get the form working but the
    userform inputs seem to be local to the code that I have for the form
    but I haven't been able to get the variables back to my main code
    section.

    PS, My userform is in my personal.xls and I will be using the data to
    affect a separate workbook.

    Thanks,
    Chet

    Code I have so far....

    '///////////////////////CODE IN THE
    USERFORM///////////////////////////////////////
    Private Sub CommandButton2_Click()

    End Sub



    Private Sub OKButton_Click_Click()
    Msg = "You selected Item # "
    Msg = Msg & ListBox1.ListIndex
    Msg = Msg & vbCrLf
    Msg = Msg & ListBox1.Value
    LocID = ListBox1.Value
    MsgBox Msg
    Unload UserForm1
    End Sub


    '/////////////////MAIN PROGRAM CODE////////////////////////////////
    Sub TOOLBAR_POSTAL_BYP_MIX_BREAKOUT_vsn2()


    With UserForm1.ListBox1
    .AddItem "SFO"
    .AddItem "OAK"
    .AddItem "SJC"
    End With
    With UserForm1.ListBox2
    .AddItem "ORIG"
    .AddItem "DEST"
    End With
    With UserForm1.ListBox3
    .AddItem "Weekday"
    .AddItem "Saturday"
    .AddItem "Sunday"
    End With

    UserForm1.ListBox1.ListIndex = 0
    UserForm1.Show

    'the rest of the code follows here unrelated to the data / form
    entry//////////
    Application.ScreenUpdating = False
    Direction = InputBox("Input DEST or ORIG")
    Direction = UCase(Direction)


  2. #2
    K Dales
    Guest

    RE: How take form based data entry back to main sub?

    If you declare all your variables used for input as Public (at the top of the
    userform module - not inside your subs) they are global variables; that is,
    they are available to all modules. There are other ways, too, but this is
    simplest.
    --
    - K Dales


    "Chet" wrote:

    > Hi -
    > I am new to using 'custom dialog boxes'. I am trying to take some data
    > from my user form once I have hit the OK button on the userform and
    > bring those entries back to my main sub where I will use this data to
    > run the rest of my code. I am able to get the form working but the
    > userform inputs seem to be local to the code that I have for the form
    > but I haven't been able to get the variables back to my main code
    > section.
    >
    > PS, My userform is in my personal.xls and I will be using the data to
    > affect a separate workbook.
    >
    > Thanks,
    > Chet
    >
    > Code I have so far....
    >
    > '///////////////////////CODE IN THE
    > USERFORM///////////////////////////////////////
    > Private Sub CommandButton2_Click()
    >
    > End Sub
    >
    >
    >
    > Private Sub OKButton_Click_Click()
    > Msg = "You selected Item # "
    > Msg = Msg & ListBox1.ListIndex
    > Msg = Msg & vbCrLf
    > Msg = Msg & ListBox1.Value
    > LocID = ListBox1.Value
    > MsgBox Msg
    > Unload UserForm1
    > End Sub
    >
    >
    > '/////////////////MAIN PROGRAM CODE////////////////////////////////
    > Sub TOOLBAR_POSTAL_BYP_MIX_BREAKOUT_vsn2()
    >
    >
    > With UserForm1.ListBox1
    > .AddItem "SFO"
    > .AddItem "OAK"
    > .AddItem "SJC"
    > End With
    > With UserForm1.ListBox2
    > .AddItem "ORIG"
    > .AddItem "DEST"
    > End With
    > With UserForm1.ListBox3
    > .AddItem "Weekday"
    > .AddItem "Saturday"
    > .AddItem "Sunday"
    > End With
    >
    > UserForm1.ListBox1.ListIndex = 0
    > UserForm1.Show
    >
    > 'the rest of the code follows here unrelated to the data / form
    > entry//////////
    > Application.ScreenUpdating = False
    > Direction = InputBox("Input DEST or ORIG")
    > Direction = UCase(Direction)
    >
    >


  3. #3
    Chet
    Guest

    Re: How take form based data entry back to main sub?

    I just tried that and watched the value of LocID and it keeps the value
    until the UNLOAD USERFORM1 command is ran and then I get 'out of
    context' for that variable even with the public declaration of the
    variables. See my code below. (It's very simple.) .. Thx!

    Public Direction As String
    Public DOW As String
    Public LocID As String
    Private Sub CommandButton2_Click()

    End Sub
    Private Sub OKButton_Click_Click()
    Msg = "You selected Item # "
    Msg = Msg & ListBox1.ListIndex
    Msg = Msg & vbCrLf
    Msg = Msg & ListBox1.Value
    LocID = ListBox1.Value
    MsgBox Msg
    'Unload UserForm1
    End Sub
    Private Sub UserForm_Click()

    End Sub


+ 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