Clever-Excel-Forum

Normale Version: BeforeClose CommandButton auf Ausgangsstellung
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3 4
Hi,

also bei meiner Beispieldatei funktioniert es. Ich habe aber die Verknüpfung der Buttons nicht drin, wie geht das?
[attachment=16394]
@ Kuwer: Userform? Sorry, aber die paar VBA-Kenntnisse, die ich mir seit kurzem selber beibringe, reichen nicht aus um zu verstehen was du meinst.
(24.02.2018, 12:42)CaptainNemo schrieb: [ -> ]Userform? Sorry, aber die paar VBA-Kenntnisse, die ich mir seit kurzem selber beibringe, reichen nicht aus um zu verstehen was du meinst.

http://www.clever-excel-forum.de/thread-14285.html  Undecided
Ok, Userform sagt mir natürlich doch was, ich dachte, du hast meinst was anderes, hab mich schon gewundert.

Zum Beispiel bleibt eine UF, bei der ShowModal auf False steht, auch "stehen", wenn der Anwender in eine andere Excel-Datei wechselt. Auch sonst ist die UF statisch, sie bleibt wie sie ist, auch wenn man das Fenster verkleinert, oder die Anzeige verkleinert/vergrößert... Für die Anwender, für die ich die Datei erstelle, ist diese Methode deshalb ungeeignet.

(24.02.2018, 12:33)Kuwer schrieb: [ -> ]Hallo,
ThisWorkbook.Names("T_1").Comment
"geistert" vermutlich unverändert in Deinen Codes herum?

Welche gravierenden Nachteile hatte denn die Userformvariante?

Gruß Uwe

Was meinst du denn damit?
@Rabe: Mit diesem Code funktioniert es eben nicht. Der Hund liegt sicher in der Verknüpfung der Buttons begraben.

Der Code für die Synchronisierung von Buttons kommt von Fennek, der mir den Code für ToggleButtons gab. Auf CommandButtons angewendet, finde ich ihn allerdings noch besser für meine Zwecke.

In den Arbeitsblättern:

Code:
Private Sub CommandButton1_Click()
   CommandButton1.Caption = IIf(CommandButton1.Caption = "Eingabe", "Bearbeitung", "Eingabe")
   ThisWorkbook.Names("T_1").Comment = CommandButton1.Caption
End Sub

Private Sub Worksheet_Activate()
   CommandButton1.Caption = ThisWorkbook.Names("T_1").Comment
End Sub


Dieses Makro muss erst einmal von Hand gestartet werden, damit der Namen geschrieben wird.
Code:
Sub T_1()
  Debug.Print ActiveSheet.OLEObjects("CommandButton1").Object.Value, ActiveSheet.OLEObjects("CommandButton1").Object.Caption
   ThisWorkbook.Names.Add "T_1", "_", False
End Sub
Hallo,

dann versuche auch ich mich mal im Raten:


Code:
Private Sub Workbook_Open()
For Each blaetter In ThisWorkbook.Sheets
 blaetter.CommandButton1.Caption = "Eingabe"
Next
End Sub


Generell  gilt, dass man nur Codes nutzen soll, die man zumindest nachvollziehen kann.

mfg
(24.02.2018, 13:22)Fennek schrieb: [ -> ]Hallo,

dann versuche auch ich mich mal im Raten:


Code:
Private Sub Workbook_Open()
For Each blaetter In ThisWorkbook.Sheets
 blaetter.CommandButton1.Caption = "Eingabe"
Next
End Sub


Generell  gilt, dass man nur Codes nutzen soll, die man zumindest nachvollziehen kann.

mfg

ich sehe da keinen Unterschied zu #9.

Gruß Uwe
Den habe ich schon zigmal probiert. Reaktion wie oben beschrieben. Der Button im beim Öffnen aktiven Blatt hat die gewünschte Beschriftung, die Buttons in den anderen Blättern nicht. Wechselt man zurück auf das erste Blatt, switcht dessen Button ebenfalls in diesselbe Beschriftung. Mit der Ilf-Funktion dasselbe (s.o.).
zeige mal den ganzen aktuellen Code, wenn möglich die Datei.

Die CommandButtons haben auf jedem Blatt den gleichen Namen?
Hi, das ist ne Beispieldatei, da ich aushilfsweise in einem anderen Internatshaus eingesetzt bin. Die Codes sind aber original.
Seiten: 1 2 3 4