+ Reply to Thread
Results 1 to 3 of 3

Go to Specific Range through ComboBox Item Selection

  1. #1
    Registered User
    Join Date
    07-31-2011
    Location
    Bhutan
    MS-Off Ver
    Excel 2007
    Posts
    16

    Go to Specific Range through ComboBox Item Selection

    Hi,
    I am using excel 2007 and I have a workbook with many sheets in it. I have Three Comboboxes in a userform. Combobox1, 2 & 3 have values from ranges in a sheet. Below is th example of Combobox Values when I select values from all the Comboboxes:
    Combobox1 Combobox2 Combobox3
    Class1 1A Sheet1
    Sheet2
    1B Sheet1
    Sheet2
    What I want to achieve is that When I select Class1(from Combobox1) and 1B(from Combobox2) and Sheet1( from Combobox3), the Range (A1:AB100) in Sheet1 (meant for 1A) should be hidden and Range (A101:AB200) for 1B should be chosen. Similarly, this should be done for 1B, sheet2.
    Any suggessions with the vba code will be highly appreciated.
    Lok

  2. #2
    Valued Forum Contributor blane245's Avatar
    Join Date
    02-20-2009
    Location
    Melbourne, FL
    MS-Off Ver
    Excel 2010
    Posts
    649

    Re: Go to Specific Range through ComboBox Item Selection

    I think I have the idea of what you are trying to do. Could you describe what the Combobox1(Class1) selection is doing. I see that selection of 1A/1B from Combobox2 determines a range of cells and that selection of Sheet from Combobox3 determines which sheet. How does the Combox1 selection affect the hiding and unhiding?
    Bob
    Click my star if my answer helped you. Mark the thread as [SOLVED] if it has been.

  3. #3
    Registered User
    Join Date
    07-31-2011
    Location
    Bhutan
    MS-Off Ver
    Excel 2007
    Posts
    16

    Re: Go to Specific Range through ComboBox Item Selection

    I could somehow work with the code as detaile below and I could Achieve what I wanted. Following is my code which is only for ONE Class selected from Combobox1 and One Item Seleted from Combobox3. But my code will be quite lengthy for Different Classes as I have to code for Each Class and Each Item selected in Combobox3. I sthere a shorter way to achieve this.

    [Private Sub ComboBox1_Click()
    Dim ListCell As Range
    Me.ComboBox2.Clear
    If Me.ComboBox1.Text = vbNullString Then Exit Sub
    For Each ListCell In Sheets(1).Range(Me.ComboBox1.List(Me.ComboBox1.ListIndex))
    If ListCell.Value <> "" Then Me.ComboBox2.AddItem (ListCell.Value)
    Next ListCell
    End Sub
    Private Sub ComboBox2_Click()
    Me.ComboBox3.Clear
    Dim ListCell As Range
    If Me.ComboBox2.Text = vbNullString Then Exit Sub
    For Each ListCell In Sheets(1).Range(Me.ComboBox2.List(Me.ComboBox2.ListIndex))
    Me.ComboBox3.AddItem (ListCell.Value)
    Next ListCell
    End Sub
    Private Sub ComboBox3_Click()
    Application.ScreenUpdating = False
    If Me.ComboBox2.Text = "PPA" And Me.ComboBox3.Text = "Enter Student Data or Marks-PPA" Then
    Sheets("Enter Student Data or Marks-PP").Select
    Sheets("Enter Student Data or Marks-PP").Range("A7:CQ58").EntireRow.Hidden = False
    Sheets("Enter Student Data or Marks-PP").Range("A59:CQ370").EntireRow.Hidden = True
    End If
    If Me.ComboBox2.Text = "PPB" And Me.ComboBox3.Text = "Enter Student Data or Marks-PPB" Then
    Sheets("Enter Student Data or Marks-PP").Select
    Sheets("Enter Student Data or Marks-PP").Range("A7:CQ58").EntireRow.Hidden = True
    Sheets("Enter Student Data or Marks-PP").Range("A59:CQ110").EntireRow.Hidden = False
    Sheets("Enter Student Data or Marks-PP").Range("A111:CQ370").EntireRow.Hidden = True
    End If
    If Me.ComboBox2.Text = "PPC" And Me.ComboBox3.Text = "Enter Student Data or Marks-PPC" Then
    Sheets("Enter Student Data or Marks-PP").Select
    Sheets("Enter Student Data or Marks-PP").Range("A7:CQ110").EntireRow.Hidden = True
    Sheets("Enter Student Data or Marks-PP").Range("A111:CQ162").EntireRow.Hidden = False
    Sheets("Enter Student Data or Marks-PP").Range("A163:CQ370").EntireRow.Hidden = True
    End If
    If Me.ComboBox2.Text = "PPD" And Me.ComboBox3.Text = "Enter Student Data or Marks-PPD" Then

    Sheets("Enter Student Data or Marks-PP").Select
    Sheets("Enter Student Data or Marks-PP").Range("A7:CQ162").EntireRow.Hidden = True
    Sheets("Enter Student Data or Marks-PP").Range("A163:CQ214").EntireRow.Hidden = False
    Sheets("Enter Student Data or Marks-PP").Range("A215:CQ370").EntireRow.Hidden = True
    End If
    If Me.ComboBox2.Text = "PPE" And Me.ComboBox3.Text = "Enter Student Data or Marks-PPE" Then
    Sheets("Enter Student Data or Marks-PP").Select
    Sheets("Enter Student Data or Marks-PP").Range("A7:CQ214").EntireRow.Hidden = True
    Sheets("Enter Student Data or Marks-PP").Range("A215:CQ266").EntireRow.Hidden = False
    Sheets("Enter Student Data or Marks-PP").Range("A267:CQ370").EntireRow.Hidden = True
    End If
    If Me.ComboBox2.Text = "PPF" And Me.ComboBox3.Text = "Enter Student Data or Marks-PPF" Then

    Sheets("Enter Student Data or Marks-PP").Select
    Sheets("Enter Student Data or Marks-PP").Range("A7:CQ266").EntireRow.Hidden = True
    Sheets("Enter Student Data or Marks-PP").Range("A267:CQ318").EntireRow.Hidden = False
    Sheets("Enter Student Data or Marks-PP").Range("A319:CQ370").EntireRow.Hidden = True
    End If
    If Me.ComboBox2.Text = "PPG" And Me.ComboBox3.Text = "Enter Student Data or Marks-PPG" Then
    Sheets("Enter Student Data or Marks-PP").Select
    Sheets("Enter Student Data or Marks-PP").Range("A7:CQ318").EntireRow.Hidden = True
    Sheets("Enter Student Data or Marks-PP").Range("A319:CQ370").EntireRow.Hidden = False
    End If]

+ Reply to Thread

Thread Information

Users Browsing this Thread

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

Tags for this Thread

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