Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen

CommandButton formatieren VBA

Betrifft: CommandButton formatieren VBA von: Lisa
Geschrieben am: 19.10.2020 07:49:38

Hallo liebe VBAler,

vielleicht könntet ihr mir mal wieder weiterhelfen, das wäre tolle : )
Folgendes ist das Problem:
Beim Öffnen einer Exceldatei öffnet sich zunächst nur das Sheet "Auswahl" auf dem ein CommandButton ist.
Hin und wieder ist die Schriftgröße enorm riesig und verstellt sich von selbst. Sobald man an dem Button herumzieht geht er wieder zurück in seine ursprüngliche Formatierung...
Um das zu vermeiden, wollte ich in den VBA eine feste Formatierung für den Button einbauen.

In das Sheet "Auswahl", auf dem der Button ist, hab ich folgendes eingebaut, aber es funktioniert nicht:

Sub Sheet_Activate()
'Einstellungen für CommandButton:
With CommandButton1
.Font = "Calibri"
.Font.Size = 20
End With

Wo könnte hier mein Fehler liegen?
Viele liebe Grüße,
Lisa

Betrifft: AW: CommandButton formatieren VBA
von: volti
Geschrieben am: 19.10.2020 08:47:20

Hallo Lisa,

wird auch der ganze Button größer und nicht nur die Schrift?

Das ist ein uraltes Problem bzgl. Active-X-Elementen, das M$ immer noch nicht gelöst hat.
Nach Wechsel der Bildschirmauflösung (Umschalten auf Beamer, von Desktop auf Laptop usw.) kann sich die Darstellung (in der Regel die Größe) mit jedem Klick darauf vergrößern oder auch verkleinern, bis es irgendwann winzig oder so groß wie der Bildschirm ist. Je nachdem, von welcher Auflösung zu welcher Auflösung gewechselt wird.

Ich würde jetzt nicht die Schriftgröße ändern, denn die hat sich nicht verändert (nur in der Darstellung), sondern die Größe der Button wieder anpassen.
Mit dem Resizing der Buttons wird (zumindest bei mir) auch immer die Schriftgröße wieder richtig angezeigt.

Code:
[Cc]
 
Private Sub Worksheet_Activate() 'Formatieren With ActiveSheet With .CommandButton1 .top = 100: .left = 100 .Width = 100: .Height = 50 End With 'usw. End With End Sub
 
____________________
viele Grüße aus Freigericht
Karl-Heinz


Betrifft: AW: CommandButton formatieren VBA
von: Lisa
Geschrieben am: 19.10.2020 09:02:43

Hallo Karl-Heinz,

brilliant, das Resizing des Buttons hat geholfen, vielen herzlichen Dank für deine Expertise!
Auch für die allgemeine Aufklärung über dieses uralte Problem. :-) Danke!
Liebe Grüße nach Freigericht!

Betrifft: AW: Makro funzt, aber Werte ändern sich nicht
von: Lisa
Geschrieben am: 19.10.2020 10:17:08

Noch eine Frage zum Abschluss dieses Themas:

Wenn ich das Makro durchlaufen lassen und danach im Eigenschaftsfenster des Buttons die Eigenschaften Top, Left, Width und Height überprüfe, zeigt es hier immer noch die alten Werte an. - Kann das trotzdem stimmig sein oder bsteht hier noch ein Fehler?

Liebe Grüße :)

Betrifft: AW: Makro funzt, aber Werte ändern sich nicht
von: volti
Geschrieben am: 19.10.2020 10:32:53

Hallo Lisa,

durch das Darstellungsproblem wurden die Werte (top, font, height usw.) ja nicht verändert, sondern lediglich die Darstellung auf dem Bildschirm verändert.
Deshalb hat auch Dein ursprüngliches Makro (an sich ja korrekt) keine Erfolg gebracht.

Mit dem Resizing erzwingst Du lediglich eine Neudarstellung, obwohl sich die Parameter nicht verändert hatten.

viele Grüße
Karl-Heinz

Betrifft: AW: Makro funzt, aber Werte ändern sich nicht
von: Lisa
Geschrieben am: 19.10.2020 10:56:39

Hallo Karl-Heinz,
alles klar, sehr vielen Dank! :-)

Beiträge aus dem Excel-Forum zum Thema "CommandButton formatieren VBA"