Results 1 to 9 of 9

Thread: [RESOLVED] Userform: Letting a user click on a listbox item after a multipage has been clicked.

  1. #1

    Thread Starter
    Junior Member
    Join Date
    Jul 2009
    Location
    USA
    Posts
    18

    Resolved [RESOLVED] Userform: Letting a user click on a listbox item after a multipage has been clicked.

    I have a userform that has three multipage tabs with one listbox per page (also an OK button and a cancel button). I want to let the user click on the one of the multipage tabs and then choose an item from listbox. What actually happens is when I choose the multipage it calls the listbox but doesn't allow the user to choose a listbox item before finishing the execution. What do I need to do is allow the form to wait until the user chooses an item from the listbox before the finishing the execution. The Code is below. Any help would be greatly appreciated.

    Code:
    Private Sub CancelButton_Click()
    strDCodePathFolder = ""
    Me.Tag = 1
    Me.Hide
    End Sub
    
    Private Sub ListDCodeXYZ_Click()
        Select Case ListDCodeXYZ.ListIndex
            Case 0: strDCodePathFolder = Sheets("DCode Pivot").Range("A5")
            Case 1: strDCodePathFolder = Sheets("DCode Pivot").Range("A6")
            Case 2: strDCodePathFolder = Sheets("DCode Pivot").Range("A7")
            Case 3: strDCodePathFolder = Sheets("DCode Pivot").Range("A8")
            Case 4: strDCodePathFolder = Sheets("DCode Pivot").Range("A9")
            Case 5: strDCodePathFolder = Sheets("DCode Pivot").Range("A10")
            Case 6: strDCodePathFolder = Sheets("DCode Pivot").Range("A11")
            Case 7: strDCodePathFolder = Sheets("DCode Pivot").Range("A12")
            Case 8: strDCodePathFolder = Sheets("DCode Pivot").Range("A13")
            Case 9: strDCodePathFolder = Sheets("DCode Pivot").Range("A14")
            Case 10: strDCodePathFolder = Sheets("DCode Pivot").Range("A15")
            Case 11: strDCodePathFolder = Sheets("DCode Pivot").Range("A16")
        Case Else: MsgBox "No Entry Selected"
        End Select
    End Sub
    
    Private Sub ListDCodeDEF_Click()
        Select Case ListDCodeDEF.ListIndex
            Case 0: strDCodePathFolder = Sheets("DCode Pivot").Range("A5")
            Case 1: strDCodePathFolder = Sheets("DCode Pivot").Range("A6")
            Case 2: strDCodePathFolder = Sheets("DCode Pivot").Range("A7")
            Case 3: strDCodePathFolder = Sheets("DCode Pivot").Range("A8")
            Case 4: strDCodePathFolder = Sheets("DCode Pivot").Range("A9")
            Case 5: strDCodePathFolder = Sheets("DCode Pivot").Range("A10")
            Case 6: strDCodePathFolder = Sheets("DCode Pivot").Range("A11")
            Case 7: strDCodePathFolder = Sheets("DCode Pivot").Range("A12")
            Case 8: strDCodePathFolder = Sheets("DCode Pivot").Range("A13")
            Case 9: strDCodePathFolder = Sheets("DCode Pivot").Range("A14")
            Case 10: strDCodePathFolder = Sheets("DCode Pivot").Range("A15")
        Case Else: MsgBox "No Entry Selected"
        End Select
    End Sub
    Private Sub ListDCodeABC_Click()
        Select Case ListDCodeABC.ListIndex
            Case 0: strDCodePathFolder = Sheets("DCode Pivot").Range("A5")
            Case 1: strDCodePathFolder = Sheets("DCode Pivot").Range("A6")
            Case 2: strDCodePathFolder = Sheets("DCode Pivot").Range("A7")
            Case 3: strDCodePathFolder = Sheets("DCode Pivot").Range("A8")
            Case 4: strDCodePathFolder = Sheets("DCode Pivot").Range("A9")
            Case 5: strDCodePathFolder = Sheets("DCode Pivot").Range("A10")
            Case 6: strDCodePathFolder = Sheets("DCode Pivot").Range("A11")
            Case 7: strDCodePathFolder = Sheets("DCode Pivot").Range("A12")
            Case 8: strDCodePathFolder = Sheets("DCode Pivot").Range("A13")
            Case 9: strDCodePathFolder = Sheets("DCode Pivot").Range("A14")
            Case 10: strDCodePathFolder = Sheets("DCode Pivot").Range("A15")
            Case 11: strDCodePathFolder = Sheets("DCode Pivot").Range("A16")
        Case Else: MsgBox "No Entry Selected"
        End Select
    End Sub
    
    Private Sub MultiPage1_Change()
    
    Dim i As Integer
    Select Case MultiPage1.Value
        Case 0
            Sheets("DCode Pivot").PivotTables("PivotTable1").PivotFields("Plant").ClearAllFilters
            Sheets("DCode Pivot").PivotTables("PivotTable1").PivotFields("Plant").CurrentPage = "XYZ"
            Call ListDCodeXYZ_Click
        Case 1
            Sheets("DCode Pivot").PivotTables("PivotTable1").PivotFields("Plant").ClearAllFilters
            Sheets("DCode Pivot").PivotTables("PivotTable1").PivotFields("Plant").CurrentPage = "DEF"
            Call ListDCodeDEF_Click
        Case 2
            Sheets("DCode Pivot").PivotTables("PivotTable1").PivotFields("Plant").ClearAllFilters
            Sheets("DCode Pivot").PivotTables("PivotTable1").PivotFields("Plant").CurrentPage = "ABC"
            Call ListDCodeABC_Click
    End Select
    
    End Sub
    
    
    Private Sub OKButton_Click()
    Me.Tag = 0
    Me.Hide
    End Sub

  2. #2
    Super Moderator si_the_geek's Avatar
    Join Date
    Jul 2002
    Location
    Bristol, UK
    Posts
    41,974

    Re: Userform: Letting a user click on a listbox item after a multipage has been click

    Thread moved to 'Office Development/VBA' forum (note that the "VB Editor" in Office programs is actually VBA rather than VB, so the 'VB6' forum is not really apt)

  3. #3
    Discovering Life Siddharth Rout's Avatar
    Join Date
    Feb 2005
    Location
    Mumbai, India
    Posts
    12,001

    Re: Userform: Letting a user click on a listbox item after a multipage has been click

    Why are you calling the click event in MultiPage1_Change() ?

    Let it happen automatically when the user selects and item in the listbox?
    A good exercise for the Heart is to bend down and help another up...
    Please Mark your Thread "Resolved", if the query is solved


    MyGear:
    ★ CPU ★ Ryzen 5 5800X
    ★ GPU ★ NVIDIA GeForce RTX 3080 TI Founder Edition
    ★ RAM ★ G. Skill Trident Z RGB 32GB 3600MHz
    ★ MB ★ ASUS TUF GAMING X570 (WI-FI) ATX Gaming
    ★ Storage ★ SSD SB-ROCKET-1TB + SEAGATE 2TB Barracuda IHD
    ★ Cooling ★ NOCTUA NH-D15 CHROMAX BLACK 140mm + 10 of Noctua NF-F12 PWM
    ★ PSU ★ ANTEC HCG-1000-EXTREME 1000 Watt 80 Plus Gold Fully Modular PSU
    ★ Case ★ LIAN LI PC-O11 DYNAMIC XL ROG (BLACK) (G99.O11DXL-X)
    ★ Monitor ★ LG Ultragear 27" 240Hz Gaming Monitor
    ★ Keyboard ★ TVS Electronics Gold Keyboard
    ★ Mouse ★ Logitech G502 Hero

  4. #4

    Thread Starter
    Junior Member
    Join Date
    Jul 2009
    Location
    USA
    Posts
    18

    Re: Userform: Letting a user click on a listbox item after a multipage has been click

    What would be the alternative? The reason I used MultiPage1_Change() was because that was what the default was when I clicked view code on the multipage tab. If this is incorrect, and there is a better way, I am always open to suggestions.

  5. #5
    Discovering Life Siddharth Rout's Avatar
    Join Date
    Feb 2005
    Location
    Mumbai, India
    Posts
    12,001

    Re: Userform: Letting a user click on a listbox item after a multipage has been click

    Just remove the click events from the MultiPage1_Change()... The listbox click event will fire automatically when the user clicks the listbox...
    A good exercise for the Heart is to bend down and help another up...
    Please Mark your Thread "Resolved", if the query is solved


    MyGear:
    ★ CPU ★ Ryzen 5 5800X
    ★ GPU ★ NVIDIA GeForce RTX 3080 TI Founder Edition
    ★ RAM ★ G. Skill Trident Z RGB 32GB 3600MHz
    ★ MB ★ ASUS TUF GAMING X570 (WI-FI) ATX Gaming
    ★ Storage ★ SSD SB-ROCKET-1TB + SEAGATE 2TB Barracuda IHD
    ★ Cooling ★ NOCTUA NH-D15 CHROMAX BLACK 140mm + 10 of Noctua NF-F12 PWM
    ★ PSU ★ ANTEC HCG-1000-EXTREME 1000 Watt 80 Plus Gold Fully Modular PSU
    ★ Case ★ LIAN LI PC-O11 DYNAMIC XL ROG (BLACK) (G99.O11DXL-X)
    ★ Monitor ★ LG Ultragear 27" 240Hz Gaming Monitor
    ★ Keyboard ★ TVS Electronics Gold Keyboard
    ★ Mouse ★ Logitech G502 Hero

  6. #6

    Thread Starter
    Junior Member
    Join Date
    Jul 2009
    Location
    USA
    Posts
    18

    Re: Userform: Letting a user click on a listbox item after a multipage has been click

    But there are 3 listboxes (1 per tab, with each list having a different rowsource). I tried using buttons that would change the rowsource, but since the different row sources have a different number of items I sometimes get items in the rowsources that shouldn't be there. This is why I wanted multipages so I could dictate the rowsources easier.
    Last edited by cloud_dog_9; Oct 26th, 2009 at 08:25 AM.

  7. #7

    Thread Starter
    Junior Member
    Join Date
    Jul 2009
    Location
    USA
    Posts
    18

    Re: Userform: Letting a user click on a listbox item after a multipage has been click

    So anybody want to answer?

  8. #8
    Discovering Life Siddharth Rout's Avatar
    Join Date
    Feb 2005
    Location
    Mumbai, India
    Posts
    12,001

    Re: Userform: Letting a user click on a listbox item after a multipage has been click

    Can you upload your file? or mail it to me if you don't wanna make it public?
    A good exercise for the Heart is to bend down and help another up...
    Please Mark your Thread "Resolved", if the query is solved


    MyGear:
    ★ CPU ★ Ryzen 5 5800X
    ★ GPU ★ NVIDIA GeForce RTX 3080 TI Founder Edition
    ★ RAM ★ G. Skill Trident Z RGB 32GB 3600MHz
    ★ MB ★ ASUS TUF GAMING X570 (WI-FI) ATX Gaming
    ★ Storage ★ SSD SB-ROCKET-1TB + SEAGATE 2TB Barracuda IHD
    ★ Cooling ★ NOCTUA NH-D15 CHROMAX BLACK 140mm + 10 of Noctua NF-F12 PWM
    ★ PSU ★ ANTEC HCG-1000-EXTREME 1000 Watt 80 Plus Gold Fully Modular PSU
    ★ Case ★ LIAN LI PC-O11 DYNAMIC XL ROG (BLACK) (G99.O11DXL-X)
    ★ Monitor ★ LG Ultragear 27" 240Hz Gaming Monitor
    ★ Keyboard ★ TVS Electronics Gold Keyboard
    ★ Mouse ★ Logitech G502 Hero

  9. #9

    Thread Starter
    Junior Member
    Join Date
    Jul 2009
    Location
    USA
    Posts
    18

    Re: Userform: Letting a user click on a listbox item after a multipage has been click

    I got it figured out. See the code below:

    Code:
    Private Sub ListDCodeABC_Change()
    Select Case ListDCodeABC.ListIndex
      Case 0 To 10: strDCodePathFolder = Sheets("DCode Pivot").Range("A5").Offset(ListDCodeABC.ListIndex, 0)
      Case Else: MsgBox "No Entry Selected"
        End Select
    End Sub
    
    Private Sub ListDCodeXYZ_Change()
    Select Case ListDCodeXYZ.ListIndex
      Case 0 To 10: strDCodePathFolder = Sheets("DCode Pivot").Range("A5").Offset(ListDCodeXYZ.ListIndex, 0)
      Case Else: MsgBox "No Entry Selected"
    End Select
    
    End Sub
    Private Sub ListDCodeDEF_Change()
    Select Case ListDCodeDEF.ListIndex
      Case 0 To 10: strDCodePathFolder = Sheets("DCode Pivot").Range("A5").Offset(ListDCodeDEF.ListIndex, 0)
      Case Else: MsgBox "No Entry Selected"
    End Select
        
    End Sub
    
    Private Sub MultiPage1_Change()
    
    Dim i As Integer
    Select Case MultiPage1.Value
        Case 0
            Sheets("DCode Pivot").PivotTables("PivotTable1").PivotFields("Plant").ClearAllFilters
            Sheets("DCode Pivot").PivotTables("PivotTable1").PivotFields("Plant").CurrentPage = "ABC"
            
        Case 1
            Sheets("DCode Pivot").PivotTables("PivotTable1").PivotFields("Plant").ClearAllFilters
            Sheets("DCode Pivot").PivotTables("PivotTable1").PivotFields("Plant").CurrentPage = "DEF"
            
        Case 2
            Sheets("DCode Pivot").PivotTables("PivotTable1").PivotFields("Plant").ClearAllFilters
            Sheets("DCode Pivot").PivotTables("PivotTable1").PivotFields("Plant").CurrentPage = "XYZ"
            
    End Select
    
    End Sub
    
    
    Private Sub OKButton_Click()
    Me.Tag = 0
    Me.Hide
    End Sub
    Thanks for your help!!
    Last edited by cloud_dog_9; Oct 27th, 2009 at 07:54 AM. Reason: Resolution found

Tags for this Thread

Posting Permissions

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



Click Here to Expand Forum to Full Width