Microsoft Excel

Herbers Excel/VBA-Archiv

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

ToogleButton soll automatisch rechnen | Herbers Excel-Forum


Betrifft: ToogleButton soll automatisch rechnen von: Sebastian
Geschrieben am: 13.01.2010 12:11:18

Hallo zusammen,

ich habe bei ToggleButtons ein Makro hinterlegt, dass den Text (Jahresanzeige) auf den Buttons automatisch beschriften soll. Das funktioniert auch soweit. Jetzt habe ich das Problem, dass wenn ich in der Basiszelle (von der die Berechnung ausgeht) z.B von 2009 auf 2010 ändere, dann verändert Excel die Werte in den Buttons nicht (ganz) automatisch. D.h. ich muss erst auf jeden einzelnen Button klicken, damit der richtige Wert angezeigt wird. Nun meine Frage: Kann ich in dem Makro oder auch woanders bestimmen, dass die Werte sofort geändert werden, ohne erst jeden Button anklicken zu müssen? Unter Optionen habe ich übrigens Automatisch berechnen angeklickt.

Vielen Dank vorab für eure Antworten.

Viele Grüße
Sebastian

  

Betrifft: AW: ToogleButton soll automatisch rechnen von: welga
Geschrieben am: 13.01.2010 12:43:05

Hallo,

angenommen deine Ausgangszelle ist A1. Dann könntest du das folgende Makro in die Arbeitsmappe schreiben:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("A1"), Target) Is Nothing Then
 MsgBox "Dein bisheriges Makro zum starten der Berechnung und Umbenennung"
end if
End Sub
Gruß
welga


  

Betrifft: AW: ToogleButton soll automatisch rechnen von: Sebastian
Geschrieben am: 13.01.2010 13:59:29

Hallo Welga,

schonmal Danke für deine Antwort. Ich bekomme es aber leider nicht hin, dies in meinen Code miteinzubeziehen. Ich schreibe dir mal meinen Code:

Private Sub ToggleButton1_Click()
Dim TB As ToggleButton
Set TB = ToggleButton1
If TB.Value = False Then
TB.Caption = Format(Tabelle1.Range("AI61").Value, "YYYY")
Call SpaltenAusblenden1
Else
TB.Caption = Format(Tabelle1.Range("AI61").Value, "YYYY")
Call SpaltenEinblenden1
End If
End If

End Sub
Kannst du mir evtl. noch sagen, wie ich die beiden zusammenfüge? Ich bekomme immer die Fehlermeldung: "Fehler beim Kompimieren Deklaration entspricht nicht der Beschreibung eines Ereignisses oder einer Prozedur mit demselben Namen." wenn ich die beiden zusammenfügen will.

Vielen Dank vorab.
Gruß
Sebastian


  

Betrifft: AW: ToogleButton soll automatisch rechnen von: welga
Geschrieben am: 13.01.2010 14:21:00

Hallo,

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("A1"), Target) Is Nothing Then
 Call ToggleButton1_Click
End Sub

oder versuche es mal so:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim TB As ToggleButton
If Not Intersect(Range("A1"), Target) Is Nothing Then
With userform1 'Hier eventuell anpassen
Set TB = .ToggleButton1
    If TB.Value = False Then
    TB.Caption = Format(Tabelle1.Range("AI61").Value, "YYYY")
    Call SpaltenAusblenden1
    Else
    TB.Caption = Format(Tabelle1.Range("AI61").Value, "YYYY")
    Call SpaltenEinblenden1
    End If
End With
End If

End If
End Sub
Gruß
welga


  

Betrifft: AW: ToogleButton soll automatisch rechnen von: Sebastian
Geschrieben am: 13.01.2010 16:22:47

Hi Welga,

das ist schonmal sehr gut, aber kannst du mir evtl. noch weiterhelfen warum das ganze nur funktioniert, wenn ich das Datum in dem gleichen Blatt eingebe, in dem der Button ist? Sobald der Button in einem anderen Blatt ist, geht es nicht mehr. Kann es sein, dass ich deinen Code in das Blatt einfügen muss, in dem das Datum steht und dann noch einbaue, dass er auf das andere Blatt zugreift in dem der Button ist.


Problem ist aber auch, dass ich mehrere Blätter habe in denen die gleichen Codes stehen auch mit den gleichen Namen.

Vielen Dank vorab und viele Grüße
Sebastian


  

Betrifft: AW: ToogleButton soll automatisch rechnen von: welga
Geschrieben am: 14.01.2010 07:26:08

Hallo,

Makro muss definitiv in da Blatt mit dem Datum.
Habe ich das richtig verstanden, du hast die gleichen Makros in verschiedenen Tabelenblättern? Kannst du diese nicht in ein Modul kopieren? Dann brauchst du ie nur einmal.

Dann würde ich die Aktion die durchgeführt wird als Makro in das Modul schriben und in den Tabellenblättern nur durch Klick-Ereignis dieses Makro aus dem Modul starten.

Vielleicht kannst du ja mal deine Datei hochladen, dann verstehe ich eher was du gemacht hast bzw. was das Problem genau ist.

Gruß
welga


  

Betrifft: AW: ToogleButton soll automatisch rechnen von: Sebastian
Geschrieben am: 14.01.2010 09:02:54

Hallo Welga,

ja, ich habe sehr ähnliche Makros in verschiedenen Tabellen. Diese Makros werden durch einen Klick ausgelöst und sie blenden Spalten ein und aus.

Ich schicke dir mal eine Beispieldatei, hier sind nur drei Tabellen drin (Originaldatei ist deutlich zu groß), aber das müsste reichen um mein Problem zu verstehen. In dem Startblatt wird das Datum eingegeben und und in den folgenen Tabellen soll das Datum auf den Buttons automatisch erscheinen.

https://www.herber.de/bbs/user/67210.xls

Viele Grüße
Seabstian


  

Betrifft: AW: ToogleButton soll automatisch rechnen von: Sebastian
Geschrieben am: 14.01.2010 09:32:44

Sorry hatte vergessen, die Frage noch als offen zu kennzeichnen.


  

Betrifft: AW: ToogleButton soll automatisch rechnen von: welga
Geschrieben am: 15.01.2010 15:39:50

Hallo,

anbei die Datei:

https://www.herber.de/bbs/user/67250.xls

Hoffe ist jetzt so wie du es wolltest.

gruß
welga


  

Betrifft: zur Info... von: robert
Geschrieben am: 15.01.2010 17:47:42

hi welga,

kontrollier mal alle Toggle,Toogle wörter in den makros-

du hast einen schreibfehler drin ;-)

gruß
robert


  

Betrifft: Danke für den Hinweis von: welga
Geschrieben am: 15.01.2010 18:45:57

Hallo,



danke für den Hinweis. Hier nun die Datei ohne Schreibfehler:



https://www.herber.de/bbs/user/67252.xlsm


  

Betrifft: AW: Danke für den Hinweis von: Sebastian
Geschrieben am: 19.01.2010 11:59:41

Hallo,

zunächst mal sorry dass ich erst jetzt antworte, aber ich hatte ein paar Tage Urlaub.
Aber ja es klappt, bedanke mich vielmals bei dir Welga.

Viele Grüße
Sebastian


Beiträge aus den Excel-Beispielen zum Thema "ToogleButton soll automatisch rechnen"