Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
604to608
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
604to608
604to608
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Optionsfeld

Optionsfeld
27.04.2005 18:03:30
joel
Hallo zusammen,
kann mir jemand helfen?
In einer Userform sind zwei Optionsfelder.
Ist Optionsfeld 1 aktiv, so wird ein Textfeld eingeblendet, welches bei der Aktivierung von Optionsfeld 2 wieder ausgeblendet wird.
Ich hab nun das Problem, dass ich ein Optionsfeld immer doppelt anklicken muss, um es zu aktivieren. Beim ersten Klick wird es markiert, und erst beim zweite Klick wird die eigentliche Aktion ausgeführt.
Wie lässt sich das abstellen?
Folgender Code ist hinterlegt:
Private Sub CommandButton2_Click()
Set frm = UserForm1
Sheets("Rohstoffliste").Activate
Range("b65536").End(xlUp).Offset(1, 1).Select
With frm
ActiveCell.Offset(0, 1).Value = .TextBox12.Value
If UserForm1.OptionButton1.Value = True Then
ActiveCell.Offset(0, 0).FormulaR1C1 = "2"
ActiveCell.Offset(0, -1).FormulaR1C1 = "Stück"
ElseIf UserForm1.OptionButton2.Value = True Then
ActiveCell.Offset(0, 0).FormulaR1C1 = "1"
End If
Vielen Dank schon mal,
Gruß
J*

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Optionsfeld
27.04.2005 18:47:12
paula
hi joel,
weiss gar nicht wie das. hab es auch probiert mit 2 optButtons,
mit Click-Ereignis und es geht prima

Private Sub OptionButton1_Click()
TextBox1.Visible = True
End Sub


Private Sub OptionButton2_Click()
TextBox1.Visible = False
End Sub

gruss paula
AW: Optionsfeld
27.04.2005 20:02:22
joel
hallo paula,
soweit hatte ich das auch und es funkt prima. aber sobald ich diesen code, den ich mitgeschickt hab einfüge (der bezieht sich ja teilweise auf diese buttons), taucht das beschriebene problem auf.
AW: Optionsfeld
27.04.2005 21:07:15
paula
hi joel,
'...UserForm1.OptionButton1.Value ....--> in einer userform kannst du alle objekte
direkt ansprechen, "set frm" brauchst du auch nicht. Es sei denn, du beziehst dich auf
eine andere UF als die die aktiv ist.

Private Sub CommandButton2_Click()
Sheets("Rohstoffliste").Activate
Range("b65536").End(xlUp).Offset(1, 1).Select
ActiveCell.Offset(0, 1).Value = TextBox12.Value
If OptionButton1.Value = True Then
ActiveCell.Offset(0, 0).FormulaR1C1 = "2"
ActiveCell.Offset(0, -1).FormulaR1C1 = "Stück"
ElseIf OptionButton2.Value = True Then
ActiveCell.Offset(0, 0).FormulaR1C1 = "1"
End If
End Sub

Gruss paula
Anzeige
AW: Optionsfeld
27.04.2005 21:18:20
Piet
...und select und activate sind auch nicht nötig.
AW: Optionsfeld
27.04.2005 21:22:34
joel
hallo paula,
schönen dank für die hinweise. due siehst, dass ich noch ziemlich grün bin, was vba anbetrifft.
leider ist das problem noch nicht gelöst.
verstehst du: wenn ich auf das optionsfeld klicke, ist erst nur ein gestrichelter Rahmen um die bezeichnung zu sehen, aber der schwarze punkt im button kommt erst nach dem zweiten klick.
vielleicht hast ja noch n tip :-)
grüße
j*
AW: Optionsfeld (zum kirre werden)
27.04.2005 21:57:12
paula
hi joel,
ist nicht nachvollziehbar. Kannst du den Ereigniscode der 2 optButtons u. auch den
Userform1_Initialize-Code posten?
gruss paula
Anzeige
AW: Optionsfeld (zum kirre werden)
27.04.2005 22:23:05
joel
hallo paula,
so sieht die ganze sache aus:
mit einem option-button öffnet sich ein textfeld. der inhalt dieses textfeldes (offset 0, 4)wird dann in die excel tabelle übertragen (command button 2).

Private Sub CommandButton2_Click()
Sheets ("Rohstoffliste")
Range("b65536").End(xlUp).Offset(1, 1).Select
With frm
ActiveCell.Offset(0, -2).Value = .TextBox9.Value
ActiveCell.Offset(0, 1).Value = .TextBox12.Value
ActiveCell.Offset(0, 4).Value = .TextBox13.Value
ActiveCell.Offset(0, 5).Value = .TextBox14.Value
ActiveCell.Offset(0, -1).Value = .TextBox11.Value
ActiveCell.Offset(0, 3).FormulaR1C1 = "=today()"
If OptionButton1.Value = True Then
ActiveCell.Offset(0, 0).FormulaR1C1 = "2"
ActiveCell.Offset(0, -1).FormulaR1C1 = "Stück"
ElseIf OptionButton2.Value = True Then
ActiveCell.Offset(0, 0).FormulaR1C1 = "1"
End If
Range ("a2:h2000")
Selection.Sort Key1:=Range("a2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
ActiveWindow.ScrollRow = 1
Range ("a2")
End With
End Sub


Private Sub OptionButton1_Click()
TextBox11.Visible = False
Label2.Visible = False
Label16.Visible = False
End Sub


Private Sub OptionButton2_Click()
TextBox11.Visible = True
Label2.Visible = True
Label16.Visible = True
End Sub

Anzeige
AW: Optionsfeld (zum kirre werden)
27.04.2005 23:38:35
Fred
Wenn das der komplette Code ist, kann der nicht laufen, dafür sind zuviele Fehler drin.
Lad mal deine Datei hoch.
Fred
AW: Optionsfeld (zum kirre werden)
27.04.2005 23:40:12
paula
hi joel,
hier ein paar Schönheitsveränderungen, glaub aber nicht dass es daran liegt

Private Sub CommandButton2_Click()
Sheets ("Rohstoffliste")
Range("b65536").End(xlUp).Offset(1, 1).Select
With ActiveCell
.Offset(0, -2).Value = TextBox9.Value
.Offset(0, 1).Value = TextBox12.Value
.Offset(0, 4).Value = TextBox13.Value
.Offset(0, 5).Value = TextBox14.Value
.Offset(0, -1).Value = TextBox11.Value
.Offset(0, 3).FormulaR1C1 = "=today()"
End With
With ActiveCell
If OptionButton1.Value = True Then
.FormulaR1C1 = "2"
.Offset(0, -1).FormulaR1C1 = "Stück"
ElseIf OptionButton2.Value = True Then
.FormulaR1C1 = "1"         'offset(0, 0) bedeutet keine Bewegung,also die gleiche
End If
End With
Range ("A2:H2000").Select
Selection.Sort Key1:=Range("a2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
'ActiveWindow.ScrollRow = 1  'weiss nicht wofür
Range ("A2").Select
End Sub

gruss paula
Anzeige
AW: FormulaR1C1 wird anders verwendet
27.04.2005 23:56:37
paula
hi joel,
es sind noch andere Fehler drin, bin aber zu müde, um alle einzeln durchzugehen
Beisp:
ActiveCell.Offset(0, 0).FormulaR1C1 = "2" ''--&gt soweit ich weiss wird FormulaR1C1 anders verwendet,vieleicht soll aber activecell den wert "2" erhalten, dann muss es
ActiveCell.Value = "2"
lauten. Eine beispielmappe wäre hilfreich
gruss paula
AW: FormulaR1C1 @Paula
28.04.2005 09:17:00
Luc:-?
Hallo Paula & Joel,
hier ist es egal. FormulaR1C1 ist aber generell wenig zu empfehlen, weil hier auf Z1S1-XL-Einstellung abgestellt wird. Die Allermeisten haben aber A1 eingestellt. Nur der Makrorecorder bevorzugt R1C1. Text u. Werte können .Formula(Local) oder .Value zugeordnet wdn, Formeln natürlich nur .Formula(Local). Außerdem gibt es noch andere Ebenen wie .FormulaArray für Matrixformeln...
Gruß Luc :-?
Anzeige
AW: FormulaR1C1 @Paula
28.04.2005 18:00:34
joel
hallo nochmal,
ich hab die ganze datei mal reingestellt, um es besser verständlich zu machen.
selbst wenn in meinem code bestimmt anfänger-fehler drin sind (bin aber für jeden tip voll dankbar), hat er funktioniert. bis eben auf diese beschriebene schwäche des optionsfeldes.
vielleicht kommt ja noch jemand drauf.
ist dein akku wieder geladen, paula?
gruß
j*
AW: datei
29.04.2005 10:45:52
Bert
Schmeiß die ControlSource der Optionbutton raus.
mfg Bert
AW: datei
29.04.2005 17:07:44
joel
hallo bert,
ein herzliches DANKESCHÖN!
es funkt!
gruß
J*
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige