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

Optionsfelder in UserForm reagieren nicht

Optionsfelder in UserForm reagieren nicht
23.08.2006 09:38:55
Karsten
Hallo zusammen,
ich habe eine UserForm erstellt, die, nach klick auf den Button "Daten bearbeiten" geöffnet werden soll. In dieser UserForm sind Optionsfelder eingebunden, mit denen man die Abteilung, in der ein jeweiliges Fahrzeug fährt, auswählen kann.
Leider habe ich, auch nach mehrstündiger Suche in der Fachliteratur und diesem Forum, keine Möglichkeit gefunden, die nach Auswahl einer Abteilung und Klick auf den Button "Übernehmen" die ausgewählte Abteilung in die Übersicht auf dem Tabellenblatt "Stammdaten" schreibt.
Habt ihr eine Idee, wie man das lösen kann?
Hier der Link zur Datei: https://www.herber.de/bbs/user/36065.xls
Viele Grüße
Karsten

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Optionsfelder in UserForm reagieren nicht
23.08.2006 09:51:10
Hans
Hallo Ludwig,
füge in das Klassenmodul der UserForm folgende Funktion ein:

Function AbteilungsAuswahl() As String
Dim oCtrl As Control
For Each oCtrl In Me.Controls
If TypeName(oCtrl) = "OptionButton" Then
If oCtrl.Value = True Then
AbteilungsAuswahl = oCtrl.Caption
Exit Function
End If
End If
Next oCtrl
End Function

Rufe dann in Deiner Sub <b>CB_Übernehmen_Click</b> die Funktion wie folgt auf: Cells(xZeile, 3).Value = AbteilungsAuswahl gruss hans
AW: Optionsfelder in UserForm reagieren nicht
23.08.2006 11:21:04
Karsten
Hallo Hans,
danke für die Hilfe - das funktioniert.
Ich habe allerdings festgestellt, dass die Auswahl der Abteilung bei erneutem Aufruf der UserForm nicht mehr zu sehen ist.
BSP: Ich wähle für Stapler Nr. S3 die Abteilung "GOH" aus und übernehme die Änderungen. Wenn irgendwann einmal wieder die UserForm aufgerufen wird, soll dann direkt das Optionsfeld mit der derzeitigen Abteilung (bei Stapler Nr S3 also "GOH") ausgewählt sein...
Ist es weiterhin möglich, dass man die Auswahl einer Abteilung (also das Anklicken eines Optionsfeldes) zur Pflicht macht? In den ListBoxen hab ich das bereits geschafft...
Viele Grüße
Karsten
PS: Bei der Gelegeheit einmal ein dickes Lob für dieses Internetprojekt! Super Hilfe für jeden, der sich mit VBA/ Excel beschäftigt!
Anzeige
AW: Optionsfelder in UserForm reagieren nicht
23.08.2006 11:42:15
Hans
Hallo Karsten,
baue in das Change-Ereignis der ComboBox ein:

For Each oCtrl In Controls
If TypeName(oCtrl) = "OptionButton" Then
If LCase(oCtrl.Caption) = LCase(Cells(CBox_Auswahl.ListIndex + 1, 3)) Then
oCtrl.Value = True
End If
End If
Next oCtrl

Zur 2. Frage: Stelle an den Anfang der "Übernehmen"-Schaltfläche eine Schleife über alle Optionsfelder mit der Abfrage, ob der jeweilige Wert TRUE ist. Wenn dies in keinem Fall zutrifft, bringe eine entsprechende Meldung.
gruss hans
AW: Optionsfelder in UserForm reagieren nicht
23.08.2006 12:02:32
Karsten
Hallo Hans,
wenn ich deinen Code wie folgt einbaue, funktioniert das zwar, aber er gibt mir einen Laufzeitfehler 1004 aus, wenn ich die Abteilung ändere und übernehmen klicke....
Gruß Karsten

Private Sub CBox_Auswahl_Change()
Dim oCtrl As Control
For Each oCtrl In Controls
If TypeName(oCtrl) = "OptionButton" Then
If LCase(oCtrl.Caption) = LCase(Cells(CBox_Auswahl.ListIndex + 1, 3)) Then
oCtrl.Value = True
End If
End If
Next oCtrl
End Sub

Anzeige
AW: Optionsfelder in UserForm reagieren nicht
23.08.2006 13:33:56
Hans
Hallo Karsten,
prüfe in solchen Fällen im Debug-Modus die Werte, damit Du gegensteuern kannst. Im konkreten Fall ist es so, dass Du beim Übernehmen die ComboBox zurücksetzt, womit der ListIndex -1 ist. Da als Zeilennummer der ListIndex + 1 genommen wird, muss das auf einen Fehler laufen.
Fange die Sache ab, indem Du das Auslesen der Optionsfeldwerte in Abhängigkeit des ComboBox-Indexes bringst:
If CBox_Auswahl.ListIndex >= 0 Then
gruss hans
AW: Optionsfelder in UserForm reagieren nicht
23.08.2006 13:37:10
Karsten
Das ist mir nicht aufgefallen... Jetzt klappt es!
Viiiiiiiielen Dank!
Gruß Karsten
AW: Optionsfelder in UserForm reagieren nicht
23.08.2006 13:33:57
Karsten
AW: Optionsfelder in UserForm reagieren nicht
23.08.2006 10:04:21
Oberschlumpf
Hi Karsten
Hans war zwar schneller, aber ich will dir meine Idee trotzdem zeigen.
https://www.herber.de/bbs/user/36068.xls
Konnte denn auch ich helfen?
Ciao
Thorsten
Anzeige
AW: Optionsfelder in UserForm reagieren nicht
23.08.2006 11:23:36
Karsten
Hallo Thorsten,
ich hab die Fatei geöffnet - nach der Auswahl einer Abteilung mittels Optionsfeld, wird diese aber nicht in der Liste übernommen...!?
Danke dir für die Hilfe - die Lösung von Hans funktioniert ja (bis auf die zwei Fragen, die ich dazu gerade noch gestellt habe)
Viele Grüße
Karsten

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige