Results 1 to 10 of 10

Excel Ribbon dropdown

Threaded View

  1. #1
    Registered User
    Join Date
    04-13-2010
    Location
    Calgary, Canada
    MS-Off Ver
    Excel 2003
    Posts
    4

    Excel Ribbon dropdown

    I have customized a new tab on the ribbon, incorporating Ron de Bruin's dropdown XML and Vb code and it does work - I can select repeatedly from the dropdown and it takes the user choice and puts in cell B10. The info in B10 is used in a lookup with results in L10. The info in cell L10 is used by another macro that initiates a user form.
    Here is the problem - I can continue selecting from the dropdown with no problems UNTIL I run the macro that launches the user form that uses the info in L10. Once I have run that macro/userform I get an error in selecting from the dropdown
    Here is the dropdown Vb

    Option Explicit
    
    Dim ItemCount As Integer
    Dim ListItemsRg As Range
    Dim MySelectedItem As String
    
    
    ''=========Drop Down Code =========
    
    ''Callback for Dropdown getItemCount.
    ''Tells Excel how many items in the drop down.
    Sub DDItemCount(control As IRibbonControl, ByRef returnedVal)
        With Worksheets("Actual").Range("C15:C121")
            Set ListItemsRg = Range(.Cells(1), .Offset(.Rows.Count).End(xlUp))
            ItemCount = ListItemsRg.Rows.Count
            returnedVal = ItemCount
        End With
    End Sub
    
    ''Callback for dropdown getItemLabel.
    ''Called once for each item in drop down.
    ''If DDItemCount tells Excel there are 10 items in the drop down
    ''Excel calls this sub 10 times with an increased "index" argument each time.
    ''We use "index" to know which item to return to Excel.
    Sub DDListItem(control As IRibbonControl, index As Integer, ByRef returnedVal)
        returnedVal = ListItemsRg.Cells(index + 1).Value
        ''index is 0-based, our list is 1-based so we add 1.
    End Sub
    
    ''Drop down change handler.
    ''Called when a drop down item is selected.
    Sub DDOnAction(control As IRibbonControl, ID As String, index As Integer)
    ' Two ways to set the variable MySelectedItem to the dropdown value
    
    'way 1
        MySelectedItem = ListItemsRg.Cells(index + 1).Value
    
        ''way 2
        'Call DDListItem(control, index, MySelectedItem)
    Worksheets("Actual").Range("B10").Value = MySelectedItem
    End Sub
    
    ''Returns index of item to display.
    Sub DDItemSelectedIndex(control As IRibbonControl, ByRef returnedVal)
        'returnedVal = 0
        MySelectedItem = ListItemsRg.Cells(1).Value
    
    End Sub
    
    ''------- End DD Code --------
    Here is the "other" macro and userform (I have used ***** in this post to separate)



    ''Show the variable MySelectedItem (selected item in the dropdown)
    ''You can use this variable also in other macros
    Sub ValueSelectedItem(control As IRibbonControl)
        ' MsgBox "The variable MySelectedItem have the value = " & MySelectedItem & vbNewLine & _
               ' "You can use MySelectedItem in other code now to use the dropdown value"
               UserForm1.Show
    End Sub
    
    
    Private Sub UserForm_Initialize()
    Me.TextBox1.Text = CStr(ThisWorkbook.Sheets("Actual").Range("L10").Value)
    Me.TextBox2.Text = CStr(ThisWorkbook.Sheets("Actual").Range("C11").Value)
    
    End Sub
    
    Private Sub CommandButton1_Click()
    DataInput.Show
    End
    End Sub
    
    Private Sub CommandButton2_Click()
    
    End
    End Sub

    By no stretch of the imagination am I good at Vb but have got this far
    So the error I get is with the change handler for the dropdown
    Error 91, Object Variable or With Block Variable not set
    I have struggled for a couple of days (and nights) to solve this but am at a loss at to why the dropdown will continue to work after running every other macro but the one that uses related information. Any help would be GREATLY appreciated!
    thanks much
    Vonda
    PS this is a very large file and doubt I can email or attach
    Last edited by VWood; 04-13-2010 at 01:15 PM. Reason: trying to add code and end code

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