Private Sub Document_Open()
Dim cb As CommandBar
Dim cbb As CommandBarButton
Dim ii As Integer, tx As String
'Leiste erzeugen
Set cb = CommandBars.Add _
(C_Title, msoBarFloating, False, False)
With cb
.Protection = msoBarNoResize
.Visible = True
End With
'Buttons erzeugen
For ii = 1 To 3
Set cbb = cb.Controls.Add(msoControlButton)
tx = Choose(ii, "Tabelle ausfᅵllen", _
"Insulinplan Drucken", _
"Beenden")
cbb.Style = msoButtonCaption
'cbb.Style = msoButtonIcon
'cbb.Style = msoButtonIconAndCaption
cbb.Caption = tx
tx = Choose(ii, "BerechneAlles", _
"DruckMich", "Ende")
cbb.OnAction = tx
Next ii
End Sub
--
Thomas Hoffmann
> allerdings sind die Eintrᅵge nebeneinander und ich hᅵtte sie gerne
> untereinander, was mir nicht gelingt.
Stelle die Breite so ein, dass die Eintrᅵge nur untereinander passen, bevor
du die Grᅵᅵenᅵnderung verbietest?
With cb
.Width=100
.Protection = msoBarNoResize
.Visible = True
End With
Eine allgemeine Lᅵsung (unabhᅵngig von der Breite der Buttons) fᅵllt mir
nicht ein...
Gruᅵ,
Klaus
Ist vermutlich keine so brilliante Idee:
Die nᅵtige Breite wird von den Windows-Einstellungen (Schrift?
Schriftgrᅵᅵe?) abhᅵngen.
Vielleicht kannst du alles so lassen wie es ist, und die Leiste links
andocken:
cb.Position=msoBarLeft
Oder du kᅵnntest die Anpassung der Leiste dem Benutzer ᅵberlassen
(.Protection = msoBarNoProtection).
Oder ein Menᅵ auf der Symbolleiste anlegen (msoControlPopup, Caption =
"Optionen" oder so), in dem du dann die drei Buttons unterbringst.
Gruᅵ,
Klaus
Hi Klaus, das funzt tatsᅵchlich. Einstellung muss nach laden der buttons erfolgen.
Es ist hier offenbar nicht mᅵglich, einen genauen Wert einzustellen, sondern windows
stellt den nᅵchsten, zu den buttons passenden Wert ein.
Aber: so klappt das mit dem untereinander...
Vielen Dank!
TH
--
Thomas Hoffmann