Michael, take a look at 'CommandBars' in the VBA help. In the code
below I am just adding a button to the 'Standard' toolbar, however
there isn't much diffrence if you are adding it to a custom toolbar.
The deal with changing the icons is that Excel won't let you add a
custom icon. What have to do is play within the limits of what office
has loaded for icons, which is quite extensive. The 'FaceId' is the
key, see below. For instance in Office 2003 there are buttons with
ID's from 2 to 10037. There are several excel workbook applications
people have made that show the face id's. do a search from google
groups, its search capability within this group is excellent—search
for 'show face id'.
http://groups.google.com/group/microsoft.public.excel.programming/topics?hl=en
Sub Aut

pen()
'Add Buttons to the Standard toolbar
'Change view between normal and pagebreak preview
Dim btnCap$
Dim bPVfmt As Object
btnCap = "Change View"
On Error Resume Next
Application.CommandBars("Standard"). _
Controls(btnCap).Delete
On Error GoTo 0
Set bPVfmt = Application. _
CommandBars("Standard"). _
Controls.Add(Type:=msoControlButton, _
Before:=9, temporary:=True)
With bPVfmt
'FaceId is what changes the 'icon'
'Excel won't let you make custom icons
.FaceId = 10022
.Tag = btnCap
.Caption = btnCap
.OnAction = "myPageView"
End With
End Sub
HTH—Lonnie M.
Groton, CT