Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA ToggleButton Teil 1 (Farbe ins Spiel bringen)
#11
Hallo Jörg,

leider kann ich nichts Ungewöhnliches feststellen.
Fakt ist, dass sich ActiveX-Elemente in einem Tabellenblatt
nicht exakt so verhalten wie in einer Userform.
Was aber unbedingt noch gemacht werden sollte, ist das sofortige Deaktivieren
des Buttons nach dem Klick. Beim CommandButton gibt es dafür
die TakeFocusOnClick-Eigenschaft, welche aber bei bei den anderen Elementen fehlt.
Schreibe einfach in die letzte Zeile ActiveCell.Activate.

Gruß Uwe
Antworten Top
#12
Hi Uwe, das mit dem ActiveCell.Activate habe ich verstanden, aber das andere Problem bleibt... So sieht das Kacke aus. Und so werde ich wohl meine kleine Spielerei wohl anders lösen müssen...
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht

"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Antworten Top
#13
Hallo zusammen, nachdem ich mit meiner ursprünglichen Idee komplett gescheitert bin, habe ich mir überlegt, ob man das nicht über eine Autoform oder einem Textfeld lösen könnte, das sich per Anklicken anders färbt...? Ist das wohl möglich..?
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht

"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Antworten Top
#14
Hi Jörg,

ich hatte schon befürchtet, dass Du nicht nachfragst.

Hier ein Beispiel mit zwei Autoformen Rechteck.


.xls   ToggleButtonErsatz.xls (Größe: 35,5 KB / Downloads: 7)

Gruß Uwe
Antworten Top
#15
Hallo Uwe, kannst du Gedanken lesen..? Ich hatte schon angefangen ff. zu schreiben..:

Hallo, nur nochmal nachgehakt. Ich möchte nunmehr mehrere Autoformen die frei in der Tabelle "liegen" durch Anklicken eine Frabe zuweisen (später auch einen Bereich, aber da bin ich noch nicht)
Bild unten sollen die Zustände 1 und 2 zeigen - also ein Klick Zustand 1 (Farbe 1) nochmal Klick Zustand 2 (Farbe 2)

[URL=
Dateiupload bitte im Forum! So geht es: Klick mich!
]

Den ersten Schritt denke ich, habe ich gefunden..:

Public Sub shape_2_BeiKlick()
With ActiveSheet
.Shapes("shape_2").Fill.ForeColor.SchemeColor = 3
End With
End Sub
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht

"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Antworten Top
#16
Hallo Uwe, ich habe bislang keine Möglichkeit gefunden die RGB-Farben einzusetzen.. ;-(

Ich hätte nämlich gern diese beiden Farben vom Beitrag #15 ...
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht

"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Antworten Top
#17
Hi Jörg,

statt .Fill.ForeColor.SchemeColor = 50
z.B. .Fill.ForeColor.RGB = RGB(0, 222, 0)

Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Jockel
Antworten Top
#18
Hallo Uwe mal sehen, wie weit ich komme... danke schon mal bis hierher...
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht

"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Antworten Top
#19
Hi Uwe, okay, das Farbenspiel habe ich hinbekommen... Das war durch deine Vorarbeit nicht mehr wirklich schwierig. Jetzt möchte ich, wenn ich eingeschaltet habe (keine MessageBox, sondern) eine 1 in Zelle E1 geschrieben wird beim Auschalten soll dort eine 0 stehen... ... da beisse ich noch auf Granit... Kannst du mich bitte nochmal "anstoßen"..?
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht

"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Antworten Top
#20
Hi Jörg,

jetzt wird es noch viel einfacher:

Code:
Sub Rechteck_BeiKlick()
  Dim oShape As Shape
  Dim rngV As Range
  Set oShape = ActiveSheet.Shapes(Application.Caller)
  With oShape
    'Verweis auf linke obere Zelle unter Button um eine Spalte nach rechts versetzt
    Set rngV = .TopLeftCell.Offset(0, 1)
    If rngV.Value <> 1 Then
      rngV.Value = 1
      .Fill.ForeColor.RGB = RGB(204, 204, 255)
    Else
      rngV.Value = 0
      .Fill.ForeColor.RGB = RGB(51, 153, 255)
    End If
  End With
End Sub

Gruß Uwe
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste