XL: Visual Basic Procedure to Change the Standard Font

Last reviewed: September 2, 1997
Article ID: Q114795
The information in this article applies to:
  • Microsoft Excel for Windows, version 5.0
  • Microsoft Excel for Windows 95, version 7.0
  • Microsoft Excel 97 for Windows

SUMMARY

This article includes a sample Visual Basic, Applications Edition, procedure you can use to change the standard font in Microsoft Excel. This procedure may be useful if you are creating a custom application and you want to be able to change the Normal style font automatically.

If you want this procedure to run automatically when you start Microsoft Excel, you can make it into an Auto_Open macro and place it in your Personal.xls file.

Sample Visual Basic Procedure

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.

The following macro has both Auto_Open and Auto_Close sub procedures that execute when applicable. The Change_Font sub procedure is executed whenever you switch to another window or open a new book. The subroutine contains a MsgBox dialog that will prompt you to change the standard font for the book. If you choose OK in this alert message, the Fonts dialog box will be displayed, allowing you to specify a new font.

'Runs the Change_Font sub procedure whenever you open a new
'window or switch to another book.
Sub Auto_Open()
    Application.OnWindow = "Change_Font"
End Sub

'This procedure will run each time a new window is displayed.
Sub Change_Font()
    'If the active sheet is a worksheet or macro sheet then
    'ask the user if they want to change the Normal style font.
    If TypeName(ActiveSheet) = "Worksheet" Then
       response = MsgBox("Do you want to change the Normal style?", 1)
       'If user chooses Cancel, then stop the procedure.
       If response = vbCancel Then End
       'If user chooses OK, then display the Fonts dialog box.
       Application.Dialogs(xlDialogStandardFont).Show
    End If
End Sub

'Discontinues the OnWindow function when the book containing the
'subroutines is closed.
Sub Auto_Close()
        Application.OnWindow = ""
End Sub


MORE INFORMATION

Other ways you can change the standard font include the following:

  • Using Microsoft Excel 5.0 for Windows, you can add the entry Font=<fontname,size> in the EXCEL5.INI file. For example, if you want to change the Normal style to 10-point Arial, add the following entry:

          Font=Arial,10
    

    -or-

  • From the Tools menu, choose Options, and then select the General tab. You can set the Standard Font by selecting a font and size from the drop-down lists.

    -or-

  • Change the Font for the Sheet Style by choosing Style from the Format menu and changing the Font from there.

REFERENCES

For more information about the Personal.xls file, see pages 22-23 of the Microsoft Excel 5.0 "Visual Basic User's Guide."

For more information about Creating Automatic Procedures, see page 266 of the Microsoft Excel 5.0 "Visual Basic User's Guide."


Additional query words: 5.00 5.00c 7.00 7.00c howto 8.0 8.00
Keywords : kbprg PgmHowTo kbcode kbprg
Version : 5.00 7.00 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: September 2, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.