Schriftarten in Excel mit VBA

Verehrte Experten

Ich möchte mit VBA in Excel 2000 die Namen aller verfügbaren Schriftarten ermitteln.

In Word geht das z. B. mit
For Each Schrift In FontNames

Warum geht das in Excel nicht (so) bzw. wie könnte es in Excel gehen?

Danke im Voraus
Roland

Hallo Roland,

wenn Du die Schrift auch noch dargestellt haben willst, dann musst Du das REM noch rausnehmen

Sub dispAllWindowsFonts()
 Dim objCmdBarCtrl As CommandBarControl
 Dim nCounter As Integer
 
 Application.ScreenUpdating = False
 
 Set objCmdBarCtrl = Application.CommandBars.FindControl(ID:=1728)
 
 For nCounter = 1 To objCmdBarCtrl.ListCount
 
 With Cells(nCounter, 1)
 .Value = objCmdBarCtrl.List(nCounter)
REM .Font.Name = objCmdBarCtrl.List(nCounter)
 End With
 
 Next nCounter
 
 Columns(1).AutoFit
 
 Application.ScreenUpdating = True
End Sub

Gruß
Christian

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Coole Idee mit der Commandbar! Nur gut, dass die Nummer fixiert zu sein scheint :wink:

Kristian

Servus Christian

Vielen Dank für dein geniales Programm!
Es tut genau das, was ich will.
1 Sternchen ist fast zu wenig dafür … :wink:

MfG
Roland

wenn Du die Schrift auch noch dargestellt haben willst, dann
musst Du das REM noch rausnehmen

Sub dispAllWindowsFonts()
Dim objCmdBarCtrl As CommandBarControl
Dim nCounter As Integer

Application.ScreenUpdating = False

Set objCmdBarCtrl =
Application.CommandBars.FindControl(ID:=1728)

For nCounter = 1 To objCmdBarCtrl.ListCount

With Cells(nCounter, 1)
.Value = objCmdBarCtrl.List(nCounter)
REM .Font.Name = objCmdBarCtrl.List(nCounter)
End With

Next nCounter

Columns(1).AutoFit

Application.ScreenUpdating = True
End Sub