XL97: How to Move Between Custom UserForms with CommandButtons

Last reviewed: March 13, 1998
Article ID: Q161521
The information in this article applies to:
  • Microsoft Excel 97 for Windows

SUMMARY

When you create a project with multiple UserForms, you can use CommandButtons to move between the UserForms. This article explains how to create two UserForms and includes a sample Visual Basic for Applications macro that moves between the UserForms.

MORE INFORMATION

Microsoft provides examples of Visual Basic for Applications procedures 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. The Visual Basic procedures in this article are provided 'as is' and Microsoft does not guarantee that they can be used in all situations. While Microsoft support engineers can help explain the functionality of a particular macro, they will not modify these examples to provide added functionality, nor will they help you construct macros to meet your specific needs. If you have limited programming experience, you may want to consult one of the Microsoft Solution Providers. Solution Providers offer a wide range of fee-based services, including creating custom macros. For more information about Microsoft Solution Providers, call Microsoft Customer Information Service at (800) 426-9400.

Creating the UserForms

To create the UserForms, use the following steps:

  1. Save and close any open workbooks, and then create a new workbook.

  2. Start the Visual Basic Editor (press ALT+F11).

  3. On the Insert menu, click UserForm.

This step inserts UserForm1 into the project.

  1. Add a TextBox and a CommandButton control to the UserForm.

  2. Change the Caption property of the CommandButton to "show UserForm2" (without the quotation marks).

  3. On the Insert menu, click UserForm.

This step inserts UserForm2 into the project.

  1. Add a TextBox and a CommandButton control to the UserForm.

  2. Change the Caption property of the CommandButton to "show UserForm1" (without the quotation marks).

Sample Macro for Moving Between UserForms

  1. Double-click the CommandButton on UserForm1.

  2. Type the following code for the CommandButton1 Click event:

    Private Sub CommandButton1_Click()

               'Set the text for TextBox1 in UserForm2 with the text in
               'TextBox1 in UserForm1.
               UserForm2.TextBox1.Text = TextBox1.Text
    
               UserForm1.Hide
               UserForm2.Show
           End Sub
    
    

  3. Double-click the CommandButton on UserForm2.

  4. Type the following code for the CommandButton1 Click event:

    Private Sub CommandButton1_Click()

               'Set the text for the TextBox in UserForm1.
               UserForm1.TextBox1.Text = TextBox1.Text
    
               UserForm2.Hide
               UserForm1.Show
           End Sub
    
    
NOTE: Because the CommandButton and TextBox controls are on different UserForms, you can use the same name for the controls.

  1. On the Insert menu, click Module.

  2. Type the following code in this module:

           Sub Show_UserForms()
               UserForm1.Show
           End Sub
    
    

  3. Run the Show_UserForms macro.

  4. Type any text in the TextBox on UserForm1, and then click the CommandButton.

UserForm1 is hidden. UserForm2 is displayed with the text you typed in the TextBox on UserForm1.

  1. Type new text in the TextBox on UserForm2, and then click the CommandButton.

UserForm2 is hidden. UserForm1 is displayed with the text you typed in the TextBox on UserForm2.

  1. Close the UserForm.

REFERENCES

For more information about Custom UserForms, click the Office Assistant, type "custom dialog boxes", click Search, and then click to view "Creating a custom dialog box".

NOTE: If the Assistant is hidden, click the Office Assistant button on the Standard toolbar. If Microsoft Excel Help is not installed on your computer, please see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q120802
   TITLE     : Office: How to Add/Remove a Single Office
               Program or Component


Additional query words: XL97
Keywords : kbcode kbprg xlvbahowto xlvbainfo
Version : WINDOWS:97
Platform : WINDOWS


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: March 13, 1998
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.