WD2000: Adding Built-in List Box to Toolbar Displays Empty List

ID: Q220181


The information in this article applies to:


SYMPTOMS

When you record a macro to duplicate the action of adding a built-in drop-down list box to a custom toolbar, replaying the macro adds the drop-down list box to the toolbar but the list is empty.

For example, you record adding the Insert Merge Field command to a custom toolbar in a mail merge document containing a data source. When you play back the recorded macro and then click the Insert Merge Field drop-down list box to display the list of merge fields, the list is empty.


WORKAROUND

To work around this problem, you can create a Visual Basic for Applications procedure to "copy" a built-in command to a custom toolbar.

Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific needs. If you have limited programming experience, you may want to contact a Microsoft Certified Solution Provider or the Microsoft fee-based consulting line at (800) 936-5200. For more information about Microsoft Certified Solution Providers, please see the following page on the World Wide Web:

http://www.microsoft.com/mcsp/
For more information about the support options available from Microsoft, please see the following page on the World Wide Web:

http://www.microsoft.com/support/supportnet/refguide/

The following sample Visual Basic for Applications procedure demonstrates:
  1. Creating a new custom toolbar.


  2. Copying a built-in command to the new custom toolbar.




Sub CopyBuiltInDropDown()

   Dim CopyTo As String     ' Toolbar to copy the control To.
   Dim CopyFrom As string   ' Toolbar to copy the control From.
   Dim CtrlToCopy As String ' The name of the control to Copy.

   CopyTo = "My Merge"         ' Toolbar to copy the control To.
   CopyFrom = "Mail Merge"     ' Built-in toolbar to copy the control From.
   CtrlToCopy = "Insert Merge Field" ' The name of the control to Copy.

   CommandBars.Add(Name:=CopyTo).Visible = True      ' Create new toolbar.
   CommandBars(CopyFrom).Controls(CtrlToCopy).Copy _ ' Copy control.
      Bar:=CommandBars(CopyTo)

End Sub 

To obtain the name of a built-in control, use the following steps:
  1. In Word, display the toolbar containing the control you want to copy.


  2. On the View menu, point to Toolbars, and then click Customize.


  3. Click to select the toolbar from which you want to obtain the control name.


  4. On the Commands tab of the Customize dialog box, click Modify Selection.


  5. The name of the control can be found in the Name textbox of the resulting shortcut menu.


STATUS

Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article.


MORE INFORMATION

For more information about using the sample code in this article, please see the following article in the Microsoft Knowledge Base:

Q212536 OFF2000: How to Run Sample Code from Knowledge Base Articles

Additional query words: vba


Keywords          : kbdta wd2000 
Version           : WINDOWS:2000
Platform          : WINDOWS 
Issue type        : kbbug 

Last Reviewed: June 15, 1999