Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Code mit mehreren OptionButton bringt falsches Ergebnis

Code mit mehreren OptionButton bringt falsches Ergebnis
15.03.2024 09:18:57
Simon1602
Hallo zusammen, ich habe einen Code geschrieben der wie folgt aussieht:

If ob_niedrig.Visible = True Then
tbl.DataBodyRange(Zeile, 7).Value = txb_PreisNiedrig.Value
tbl.DataBodyRange(Zeile, 3).Value = "niedrig"
ElseIf ob_mittel.Visible = True Then
tbl.DataBodyRange(Zeile, 7).Value = txb_PreisMittel.Value
tbl.DataBodyRange(Zeile, 3).Value = "mittel"
ElseIf ob_hoch.Visible = True Then
tbl.DataBodyRange(Zeile, 7).Value = txb_PreisHoch.Value
tbl.DataBodyRange(Zeile, 3).Value = "hoch"
Else: MsgBox ("Hier passt absolut nichts!")
End If

Es handelt sich hier um drei untereinander liegende OptionButton - welche jeweils ein Textfeld nebendran haben. Die Textfelder werden aus einer Datenbank korrekt gefüllt.
In der Userform soll man jetzt eine dieser OptionButton eben auf WAHR stellen und mit diesem Code soll er dann anschließend die Textbox rechts von dem OptionButton in eine andere Tabelle übertragen. Die Übertragung an sich funktioniert auch. Allerdings überträgt er mir mit meinem Code nie den richtigen Wert sondern bleibt egal bei welcher Auswahl der OptionButton bei txb_PreisNiedrig.Value hängen.... ???
Habe mir Zeitgleich noch unten das als Msgbox mal ausgeben lassen. Dort zeigt er auch wunderbar an was wahr und falsch ist.

Weis jemand wieso dieser an sich simple Code nicht funktioniert?
Könnte das auch über eine ComboBox lösen aber möchte irgendwie jetzt schon wissen was an der Sache hier falsch ist :)

Danke für Hilfe und viele Grüße
Simon
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code mit mehreren OptionButton bringt falsches Ergebnis
15.03.2024 09:47:59
Alwin Weisangler
Hallo Simon,

ändere es so:


If ob_niedrig.Value = True Then
tbl.DataBodyRange(Zeile, 7).Value = txb_PreisNiedrig.Value
tbl.DataBodyRange(Zeile, 3).Value = "niedrig"
ElseIf ob_mittel.Value = True Then
tbl.DataBodyRange(Zeile, 7).Value = txb_PreisMittel.Value
tbl.DataBodyRange(Zeile, 3).Value = "mittel"
ElseIf ob_hoch.Value = True Then
tbl.DataBodyRange(Zeile, 7).Value = txb_PreisHoch.Value
tbl.DataBodyRange(Zeile, 3).Value = "hoch"
Else: MsgBox ("Hier passt absolut nichts!")
End If


Gruß Uwe
Anzeige
AW: Code mit mehreren OptionButton bringt falsches Ergebnis
15.03.2024 11:32:20
Simon1602
Na da hätte ich mal auch selbst drauf kommen können. Aber Hauptsache ich starre da 30 Min drauf und baue hin und her und denke es kann nicht sein :)
Danke nochmals
AW: Code mit mehreren OptionButton bringt falsches Ergebnis
15.03.2024 11:20:12
ralf_b
hier noch eine alternative Möglichkeit. Quasi anders herum.

  tbl.DataBodyRange(Zeile, 7).Value = IIf(ob_niedrig, txb_PreisNiedrig, IIf(ob_mittel, txb_PreisMittel, txb_PreisHoch))

tbl.DataBodyRange(Zeile, 3).Value = IIf(ob_niedrig, "niedrig", IIf(ob_mittel, "mittel", "hoch"))
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige