1.7k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo liebe Forenmitglieder

Ist es auch möglich festgeschriebene Antwortmöglichkeiten in eine InpuBox einzustellen. Dabei meine ich kein Intervall von Zahlen oder einen DefaultWert, sondern beispielhaft auf die Frage: Welche Farbe ist deine leibste?
Zbsp. Blau, Grün und Rot vorzugeben. Und der Benutzer kann dann nur per click zwischen diesen Antwortmöglichkeiten wählen?

Weiter möchte ich gerne, dass sich die Farbe der Caption einer CheckBox beim Klicken des Kästchen verändert. Sodass beispielsweise die Fare beim leeren Kästchen grau ist (inaktiv) und wenn das Kästchen gedrückt ist die Beschriftung des Kästchens schwarz wird (aktiv).

Eine Lösung dafür ist mir bisher nicht eingefallen. Vlt könnt ihr mir helfen?

Danke im Voraus.

Eric

8 Antworten

0 Punkte
Beantwortet von
Hallo Eric!

Ich habe Dir mal eine Beispieldatei erstellt,die Du Dir unter http://www.fileuploadx.de/972320 runterladen kannst. Dain ist beides reaisiert.

Bei Fragen melde Dich.

MfG
Oliver
0 Punkte
Beantwortet von
He Oliver,

danke für deine Hilfe.

In der hochgeladenen Datei kann ich in der ComboBox keine Farben auswählen. "rot" ist als Default Wert drinen. Die Eigenschaft "fmStyleDropDownList" ist schon als Eigenschaft drinne. KA woran das liegt.

Mit ner InputBox ist die Funktion die ich haben möche nicht möglich? Ich finde das eigentlich ganz schön das bei ner InputBox ein Fenster aufgeht und mir ne Frage stellt.

Die Umsetzung der CheckBox habe ich verstanden. Vielen Dank dafür. Ich frage mich da nur wie man sowas alleine herausfinden soll ohne zb in einem Forum nachzufragen. Steht sowas in den Hndbüchern von Excel?

VG
Eric
0 Punkte
Beantwortet von
He Oliver,

doch noch noch ne Frage zu der CheckBox:

Ich habe insgesamt 8 von diesen CheckBoxes auf einem Sheet und würde jetzt 8 verschiedene Subs "CheckBox_Schriftfarbe_aendern()" schreiben. Gibts eine elegantere Lösung?

Gruß
Eric
0 Punkte
Beantwortet von
Ich wieder mal,

ich kann meine Posts nicht editieren, daher muss es so gehen.

Die ComboBox habe ich nun zum laufen bekommen. Ich habe eine Farbe in A1-A3 geändert und dann sind alle 3 Items in der COmboBox gelandet.
Allerdings, jedesmal wenn ich nun eine der 3 Farben in A1-A3 ändere werden alle Farben, auch wenn sie schon in combobox enthalten sind dazu geschrieben.
Bsp:
in A1-A3 stehen rot, blau, grün -> ComboBox enthält diese Farben

ich ändere grün zu schwarz-> in ComboBox steht rot, blau,grün, rot, blau, schwarz...

gruß
Eric
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Eric!

Ändere den in dem Code in "DieseArbeitsmappe" in dem "Workbook_SheetChange()-Ereignis" in nachfolgenden Code:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim i As Integer

Tabelle1.ComboBox1.Clear

For i = 1 To 3
Tabelle1.ComboBox1.AddItem Cells(i, 1)
Next
End Sub
Damit wird der Inhalt der ComboBox erst gelöscht, bevor der Inhalt erneuert wird.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von
He Oliver,

Danke für die Anpassung.

Eine weitere Frage möchte ich noch stellen. Es dürften dann auch die letzte sein:

Ich möchte immer spezielle Werte in mein Workbook schreiben, wenn die ComboBox einen bestimmten Wert hat. Also so ungefähr:

Sub Test()
If Tabelle1.ComboBox1.Value = "rot" Then
Tabelle2.Cells(4, 2) = "Funzt"
End If
End Sub

Ich möchte aber nicht jedesmal ein Sub von Hand starten, sondern das Sub soll beginnen jedesmal wenn die ComboBox geändert wird.
Kannst du mir die Bedingung dafür nennen?
ComboBox.Change sowas gibs ja nicht, oder?

VG Eric
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Erik!

Verwende dazu im VBA-Projekt des Tabellenblatts, in dem sich die ComboBox befindet, das "ComboBox_Change()-Ereignis". Das führt einen Befehl aus, wenn eine Änderung in der ComboBox durchgeführt wird..

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von
Super,

jetzt funktioniert alles so wie ich wollte.

Vielen Dank für deine schnelle Hilfe!

Vlt. bis bald.

Eric
...