XL: Visual Basic Procedure to Change the Standard Font

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 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 the Microsoft fee-based consulting line at (800) 936-5200. 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/overview/overview.asp
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.00c 7.00c howto 8.0 8.00

Keywords : kbprg kbdta KbVBA
Version : WINDOWS:5.0,7.0,97
Platform : WINDOWS
Issue type :


Last Reviewed: November 9, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.