Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1392to1396
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Optionbutton Userform

Optionbutton Userform
02.12.2014 15:01:13
Katharina


Hallo, ich möchte, dass wenn ich das OptBotton "Äpfel" auswähle, er mir in das Textfeld "TxtNr" die Nummer 1 reinschreibt. Ansonsten soll in dieser Textbox beim öffnen der Eingabemaske immer eine 2 stehen.
Mein Code bisher lautet:
If OptÄpfel = True Then
TxtNr = "1"
Else TxtNr = "2"
End IF
Leider schreibt er mir immer nur die 2 rein und übernimmt die 1 nicht, falls ich in meiner Eingabemaske OptÄpfel anklicke.
Könnt mir jemand helfen?
Danke
LG

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Optionbutton Userform
02.12.2014 15:02:55
Hajo_Zi
man sollte für Steuerelemente Name nicht Umlaute benutzen.
Ich baue keine Datei nach, die Zeit hat schon jemand investiert.

AW: Optionbutton Userform
02.12.2014 15:26:48
Matze Matthias
If OptÄpfel = True Then
TxtNr = 1
Else
TxtNr = 2
End IF

AW: Optionbutton Userform
02.12.2014 16:09:06
Matthias L
Hallo
TxtNr = IIf(OptÄpfel, 1, 2)
Gruß Matthias

...oder einfach: TxtNr = optÄpfel + 2 (owT)
02.12.2014 16:42:43
EtoPHG

Streber ;-) owT
02.12.2014 17:06:20
Matthias L

verstehen tue ich die +2 nicht
02.12.2014 17:11:19
Matze Matthias
Hallo Zusammen
wenn OptÄpfel True dann wäre das der Wert 1 oder?
Somit würde da 3 rauskommen oder was versteht der kleine Matze nicht?
Gruß Matze

AW: verstehen tue ich die +2 nicht
02.12.2014 18:23:04
Daniel
in VBA wird WAHR in -1 gewandelt, wenn du es in einer Rechnung verwendest.
In Excel als +1.
Gruß Daniel

Anzeige
iss schon ganz schön gemein ...
02.12.2014 18:34:09
Matthias L
Hallo
iss schon ganz schön gemein ...
... was Excel da mit seinen Usern macht ;-)
MsgBox Int(OptÄpfel)
MsgBox OptÄpfel
Alle einsperren, diese Ganoven ;-)
Ich hoffe man hat das Zwinkern bemerkt!
Gruß Matthias

AW: iss schon ganz schön gemein ...
02.12.2014 18:39:19
hary
Moin Matthias
Jepp, ist mir auch noch nie aufgefallen.
Zur Probe mal gemacht:
MsgBox CLng(Cells(1, 1) = "")

Danke Daniel
gruss hary

noch gemeiner ist das ...
02.12.2014 18:51:22
Matthias L
Hallo
Ich schrieb ja, ganz schön gemein!
Denn wenn OPtÄpfel nämlich weder True noch False ist (also leer)
gibt es bei
MsgBox Int(OptÄpfel)

ne unzulässige Verwendung von Null (Fehlermeldung)
Noch so eine Gemeínheit ;-)
Gruß Matthias

Anzeige
Das ist logisch, denn ein noch nie benutzter ...
02.12.2014 19:49:57
Luc:-?
OptionButton hat nicht den Wert False, sondern Null, Matti,
was EDV-üblich ist (zB in DBn). Man muss also erst If IsNull(…) Then fragen.
Leider wurde das, was bspw auch für mehrere verschiedene Formatierungen gleicher Art einer Zelle (zB mehr­farbiger Text) galt, ab Xl12/2007 hier oft, aber inkon­sequenter­weise nicht immer, geändert.
Luc :-?

Hier mal noch ein kleiner Test, ...
02.12.2014 23:32:20
Luc:-?
…Folks:
Sub BoolTest()
Static z As Integer
Dim isBool As Boolean, x As Variant
On Error GoTo ex: z = (z + 1) Mod 4
x = Array(Null, Empty, "", 1)(z): isBool = CBool(x)
ex: If CBool(Err.Number) Then isBool = False
MsgBox IIf(CBool(Err.Number), _
"b.F in X: '" & CStr(Not IsNull(x)), _
"sonst X=: '" & CStr(isBool)) & "'", _
IIf(CBool(Err.Number), vbCritical, vbInformation), _
"BoolTest: " & CStr(z + 1) & ". Lauf"
End Sub
Viel Spaß, Luc :-?

Anzeige
Ja, versteht er nicht! VBA ist nicht Xl, ...
02.12.2014 18:37:24
Luc:-?
…Matze;
in Xl wird WAHR (unter entsprd Bedingungen) stets als 1 aufbereitet. Im Bytes'n'Bits-Verständnis (hier von VBA) ist das GgTeil von False (=0 bzw O) nunmal True (=1 bzw L), was sich als Byte dann als 8 Bits, also 11111111 (LLLLLLLL) darstellt. Da das Byte mit 1 beginnt, repräsentiert es lt Konvention einen negativen Wert, also -1. Demggüber hätte 1 die BitFolge 00000001 (OOOOOOOL). Das wäre aber nicht das GgTeil von False (00000000 bzw OOOOOOOO)!
Das kannst du übrigens auch leicht selbst herausfinden. Ich schreibe deshalb iaR auch 2 + Cint(optApfel) oder 2 - Abs(optApfel)!
Gruß, Luc :-?
Besser informiert mit …

Anzeige
AW: Danke Luc m.T.
02.12.2014 18:46:35
hary
Moin Luc
Wie du das beschreibst versteh ich es auch. Aber jeder normale User(ich gehoerte auch dazu) denkt doch
False = 0 und True = 1
Shit happens, man lernt doch eben nie aus. Also weiterlesen/ueben.
gruss hary

Ja, das 'Gemeine' ist die Byte-Orientierung in ...
02.12.2014 19:37:16
Luc:-?
…VBA, Hary; ;-)
ein Boolescher Wert benötigt auch eines, nicht nur 1 Bit (was sonst ausreichen würde und hardware-intern wohl auch so gehandhabt wird). Allerdings benötigt die 1 (DezimalZahl!) in Xl auch eines (gepackt ein halbes)!
Eine weitere „Gemeinheit“ besteht darin, dass die xlKonvertierungsFktt wie DEZINBIN, BININDEZ u.a. abweichend vom VBA-Üblichen für negative Werte von einer 1 (nicht Bit-L!) in der 1. von 10* Stellen ausgehen, was dann nichts mehr mit Bits'n'Bytes zu tun hat, son­dern einfach nur eine (Positionierungs-)Festlegung ist.
* Gleichzeitig die DarstellungsMaxLänge von DEZINBIN, DEZINHEX u.ä., weil sonst spezielle Fest­legungen für negative Dezimal­Werte getroffen wdn müssten. Damit muss sich dann jeder aus­einander­setzen, der größere Dezimal­werte konvertieren will.
Luc :-?

Anzeige
AW:frage
02.12.2014 17:16:08
hary
Moin
Mueste es nicht
TxtNr = 2 - optÄpfel
sein?? Oder versteh ich es falsch
Bei true 1 bei false 2
gruss hary

S.oben zu Matze, Hary! owT
02.12.2014 18:39:02
Luc:-?
:-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige