AW: Button mir Grafik, FaceId Nr über Inputbox
14.07.2019 17:58:29
Nepumuk
Hallo Dieter,
es dürften so rund 15.000 Icons sein. Das letzte hat die Nummer 25.424. Zwischen dem 1. und dem letzten sind viele leere und viele doppelte. Du kannst es dir selbst mal ansehen:
Option Explicit
Private Declare PtrSafe Function MakeSureDirectoryPathExists Lib "imagehlp.dll" ( _
ByVal DirPath As String) As Long
Public Sub Export_Icons()
Dim objPicture As IPictureDisp
Dim objCommandBar As CommandBar
Dim objCommandBarButton As CommandBarButton
Dim lngIndex As Long
Dim strPath As String
strPath = ThisWorkbook.Path & "\CommandbarIcons\"
Call MakeSureDirectoryPathExists(strPath)
Set objCommandBar = CommandBars.Add(Name:="Temp", Temporary:=True)
Set objCommandBarButton = objCommandBar.Controls.Add(Type:=msoControlButton)
On Error GoTo err_exit
For lngIndex = 1 To 26000
With objCommandBarButton
.FaceId = lngIndex
Set objPicture = .Picture
Call stdole.SavePicture(Picture:=objPicture, _
Filename:=strPath & Format(lngIndex, "0000") & ".bmp")
End With
Next
err_exit:
Set objPicture = Nothing
CommandBars("Temp").Delete
End Sub
Die grauen Flächen enthalten kein Icon.
Gruß
Nepumuk