Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1748to1752
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
Combobox 1+2 suchen wert eintrag
27.03.2020 07:38:51
Michi
Hallo Ihr Excel Profis
Ich hoffe Ihr könnt mir wieder einmal helfen.
Mein Problem ist, ich habe in der Userform Kurseintrag bei der Eingabe Combobox 1 dort wähle ich den Tag aus das Klappt mit Montagvormittag 1 mit der Hilfsspalte super und auch zeigt er mir in der Label45 an ob der Platz frei oder besetzt ist.
Nun möchte ich aber z.B. Montagnachmittag (Combobox1 ) und denn Platz 1 oder 2 usw. (Combobox 2) anwählen und wenn der Platz frei ist soll es mir die Meldung in der Label45 (denn entsprechenden Text angeben) .
Ich hoffe Ihr könnt mir helfen?
https://www.herber.de/bbs/user/136143.xlsm
Ich bedanke mich für eure Hilfe und Bemühungen.
Lg Michi

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Combobox 1+2 suchen wert eintrag
27.03.2020 14:02:19
Matthias
Moin!
Mal noch eine Frage. Da das "Konzept" dann vermutlich auch für die anderen Tage funktionieren soll, was trägst du den in der Hilfsspalte ein? Kommmt da immer Montagvormittag, Montagnachmittag, Dienstagvormittag usw. hin? GIbt es da nur die Tage, die auch unter deinen Einstellungen in Tabelle8 erfasst sind oder kommt noch was hinzu? Und wie sieht das mit der Anzahl der Sitzplätze aus? SInd das immer 8 oder wie in deiner Liste Sitzplätze nachmittags nur 3? DAvon hängt dann ab, was der Code machen soll und wie man vorgeht. Ich frage mal vorher, weil es sonst vorkommen kann, dass du eine Lösung für die Daten in deiner DAtei hast aber das nicht allgemein für alle passt.
Wenn dann würde ich auch die CB6 (deine Sitzplätze) mit ändern. Da wird jetz von 1 bis 8 und dann nochmal 1 bis 3 angezeigt. Die letzten 3 waren aber lt. Liste für den Nachmittag. GIbt es da generell eine Übersicht, welcher Tag wieviele Plätze hat oder werden das immer 8?
Ich weiß noch kein COde aber viele Fragen. Macht aber das programmieren später leichter.
VG
Anzeige
AW: Combobox 1+2 suchen wert eintrag
27.03.2020 14:14:39
Michi
Hallo Matthias
Ja genau, es kommt immer Montagvormittag, Montagnachmittag, Dienstagvormittag usw. also bis Freitagnachmittag hin
Und die Sitzplätze sind immer 1-8 von jedem Tag, als Montagvormittag 1-8, Montagnachmittag 1-8, Dienstagvormittag 1-8 und das geht weiter bis Freitagnachmittag.
Ich habe noch nicht alles Eingetragen da ich immer wieder am probieren war, sorry.
Danke für deine Hilfe.
Lg Michi
Lg Michi
AW: Combobox 1+2 suchen wert eintrag
27.03.2020 16:14:11
Matthias
Moin!
Hier das ist deine Datei zurück.
https://www.herber.de/bbs/user/136170.xlsm
Habe beim Initialize mal geändert, dass nur 8 Zahlen in der CB6 eingetragen sind.
Das Changeevent von CB1 habe ich angepasst und bei CB6 was ergänzt. Wenn du nun in CB was auswählst, wird CB6 zurück gesetzt. Wenn du dann in CB6 was auswählst, wird dein Eintrag in das Label geschrieben. Du solltest aber nochmal deine Liste überpüfen. Es reicht, wenn du Montagvormittag hast oder Nummer dahinter. Entsprechend auch in der Liste so eintragen. In der Liste ist aber auch der Eintrag Kurseinheit drin. Der sollte wohl rausgenommen werden.
Probiers mal aus.
VG
Anzeige
AW: Combobox 1+2 suchen wert eintrag
27.03.2020 17:08:43
Michi
Hallo Matthias
Danke sehr für deine Hilfe ist schon fast perfekt. Nur trägt es mir die Person leider nicht in die Tabelle Anwesenheit ein.
Wenn ich die Daten eingetragen habe und einen Kursteilnehmer auswähle und dann auf Button "Kurs in die Datenbankeintragen, trägt es mir leider nicht in die Anwesenheit wo die Person auf dem Platz sein soll?
Kannst du mir weiter helfen?
Lg Michi
AW: Combobox 1+2 suchen wert eintrag
27.03.2020 20:40:24
Matthias
Moin!
Dann ändere den Code vom Commandbutton3 mal so. Damit wird es eingetragen. Für Montagvormittag, schreib nur Montagvormittag ohne die Zahlen hinten rein. Dann geht der Code auch. Ansonsten muss man wieder zuviel anpassen.
Private Sub CommandButton3_Click()
Dim lZeil As Long
Dim lListBox  As Long
Dim NextKursID As Long
Dim NextID As Long
Dim NextCell As Long
NextKursID = Application.Max(Sheets("Kursteilnahmen").Range("G:G")) + 1
NextID = Application.Max(Sheets("Kursteilnahmen").Range("A:A")) + 1
NextCell = 2
Do While Trim(CStr(Worksheets("Kursteilnahmen").Cells(NextCell, 1).Value))  ""
NextCell = NextCell + 1
Loop
lZeil = 2
For lListBox = 0 To ListBox4.ListCount - 1
Worksheets("Kursteilnahmen").Range("A" & CDbl(NextCell) + lListBox).Value = CDbl(NextID) +  _
lListBox
Worksheets("Kursteilnahmen").Range("B" & CDbl(NextCell) + lListBox).Value = ListBox4.List( _
lListBox, 0)
Worksheets("Kursteilnahmen").Range("C" & CDbl(NextCell) + lListBox).Value = ListBox4.List( _
lListBox, 1)
Worksheets("Kursteilnahmen").Range("D" & CDbl(NextCell) + lListBox).Value = ListBox4.List( _
lListBox, 2)
Worksheets("Kursteilnahmen").Range("E" & CDbl(NextCell) + lListBox).Value = ListBox4.List( _
lListBox, 3)
Worksheets("Kursteilnahmen").Range("F" & CDbl(NextCell) + lListBox).Value = ListBox4.List( _
lListBox, 4)
Worksheets("Kursteilnahmen").Range("G" & CDbl(NextCell) + lListBox).Value = CDbl(NextKursID) _
Worksheets("Kursteilnahmen").Range("H" & CDbl(NextCell) + lListBox).Value = TextBox20.Text
Worksheets("Kursteilnahmen").Range("I" & CDbl(NextCell) + lListBox).Value = TextBox19.Text
Worksheets("Kursteilnahmen").Range("J" & CDbl(NextCell) + lListBox).Value = TextBox18.Text
Worksheets("Kursteilnahmen").Range("K" & CDbl(NextCell) + lListBox).Value = TextBox17.Text
Worksheets("Kursteilnahmen").Range("L" & CDbl(NextCell) + lListBox).Value = TextBox21.Text
Worksheets("Kursteilnahmen").Range("M" & CDbl(NextCell) + lListBox).Value = TextBox16.Text
Worksheets("Kursteilnahmen").Range("N" & CDbl(NextCell) + lListBox).Value = TextBox15.Text
Worksheets("Kursteilnahmen").Range("P" & CDbl(NextCell) + lListBox).Value = TextBox14.Text
Next lListBox
'Testversuch 19.03.2020 funktioniert zum Teil nur noch Eintrag in der Falschen zeile, eintrag ü _
ber Userform Direkt an gewünschten Platz'
'Dim lngErste As Long
' With Worksheets("Anwesenheit") 'Eintrag nach Bestätigung einfügen'
'    lngErste = IIf(IsEmpty(.Cells(.Rows.Count, 1)), .Cells(.Rows.Count, 1).End(xlUp).Row, . _
Rows.Count) + 1
'    If Me.ComboBox1.Column(0) = "Montagvormittag 1" Then
'        .Cells(lngErste, 4) = Me.TextBox25
'        .Cells(lngErste, 5) = Me.TextBox27
'        .Cells(lngErste, 9) = Me.ComboBox5
'    End If
' End With
'test 27.03.2020 funktioniert
Dim rngAuswahl As Range
With Worksheets("Anwesenheit") 'Eintrag nach Bestätigung einfügen'
Set rngAuswahl = .Columns(2).Find(Me.ComboBox1.Value, lookat:=xlWhole)
'Set rngAuswahl = .Columns(3).Find(Me.ComboBox6.Value, lookat:=xlWhole) 'test24.03.2020
If Not rngAuswahl Is Nothing Then
' noch niemand eingetragen dann eintragen
' If .Cells(rngAuswahl, 4) = " " Then
If .Cells(rngAuswahl.Row + Me.ComboBox6.ListIndex, 4) = "" Then
.Cells(rngAuswahl.Row + Me.ComboBox6.ListIndex, 4) = Me.TextBox25
.Cells(rngAuswahl.Row + Me.ComboBox6.ListIndex, 5) = Me.TextBox27
.Cells(rngAuswahl.Row + Me.ComboBox6.ListIndex, 9) = Me.ComboBox5
'      Label45.Caption = "Platz ist frei" 'Wenn Platz frei dann schreib es in textlabel  _
rein
'         CommandButton9.Enabled = True
'    Else
'   Label45.Caption = "Schon belegt, bitte eine andere Auswahl treffen" 'Ist Platz  _
nicht frei dann schreib in textlabel rein
'    MsgBox "Schon belegt, bitte eine andere Auswahl treffen"
End If
'  Else
'      MsgBox Me.ComboBox1.Value & " nicht vorhanden"
End If
End With
Unload Me
End Sub

VG
Anzeige
AW: Danke viel mal
27.03.2020 21:07:42
Michi
Hallo Matthias
Genial, funktioniert einwandfrei. Es ist genau so wie ich es gern wollte.
Danke vielmals für deine mühe und deine Hilfsbereitschaft.
Wünsche Dir noch einen schönen Abend.
Lg Michi

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige