02.08.2016, 16:07
ComboBox mit Teil einer Liste füllen
|
||||||||||||||||||||
Hi Uwe,
(02.08.2016, 16:07)Kuwer schrieb: welche jetzt genau? ;) Ich habe die erste von Dir genannte (von 10:12 h) genommen, hatte gar nicht gemerkt, daß die Diskussion noch weiter ging. Naja, die Zeilennnummer der ausgewählten A-Nr. hat schon direkt damit zu tun. Die folgende Frage, warum nur ein Teil übertragen wird, nicht unbedingt. Ob Manfred mich in sein © aufnimmt, weiß ich nicht, ist mir aber auch egal. Du hast natürlich recht, es ist die Datei von bimbim, aber mit zusätzlichen Daten. Ich will die nicht weitergeben, da ich nicht weiß, ob es echte sind. Aber mal schauen, ob es vielleicht mit meiner letzten veröffentlichten Version geht: http://www.clever-excel-forum.de/thread-...l#pid47949
Moin!
Wieso .Row? .Match liefert die Fundstelle im Vektor, keinen Range! Ich schrieb ja auch: Zitat:WorksheetFunction.Match(CB1.Text, Columns(9), 0)Da steht nix von .Row am Ende. Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
03.08.2016, 11:47
03.08.2016, 11:52
Kann ich nicht nachvollziehen, Ralf.
Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8 Direktfenster: Code: ?WorksheetFunction.Match("e",columns(1),0) Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
03.08.2016, 11:53
03.08.2016, 12:01
PN erhalten!
Ich kümmere mich später darum, bis jetzt erst mal außer Haus. Bis dahin, Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
03.08.2016, 16:20
Hallo Ralf,
vielleicht eine andere Idee. Mach doch die Combobox mehrspaltig (2?). Der zweiten Spalte gibst Du die Länge 0. Beim Befüllen der Combobox gibst Du der zweiten Spalte den Zeilenindex mit. Code: Combobox.Column(0, 2) = Cells(zelle, 1).Row Im Click-Event der Combobox fragst Du dann die Zeilenindex ab. Gruß Ich
Halo,
(03.08.2016, 16:20)IchBinIch schrieb: vielleicht eine andere Idee. das klingt gut und zielführend. Leider kriege ich es nicht hin. Hier meine beiden Codes zum Initialisieren/Füllen der Combobox und zum Auslesen der Daten: Private Sub UserForm_Initialize() Dim loLetzte As Long Dim objWs As Worksheet Set objWs = ThisWorkbook.Worksheets("Datenbankliste") ' loLetzte = objWs.Cells(Rows.Count, 9).End(xlUp).Row ' letzte belegte in Spalte I (9) ' With ComboBox1 ' .List = objWs.Range("I2:I" & loLetzte).Value ' For i = .ListCount - 1 To 0 Step -1 ' If Left(.List(i), 1) <> "A" Then .RemoveItem i ' Next i ' End With For i = 2 To objWs.Cells(2, 9).End(xlDown).Row If Left(objWs.Cells(i, 9), 1) = "A" Then ComboBox1.AddItem objWs.Cells(i, 9) End If Next i End Sub Private Sub ComboBox1_Click() ' Übernehmen Dim objWs As Worksheet Set objWs = ThisWorkbook.Worksheets("Datenbankliste") boAbbruch = False If ComboBox1.ListIndex >= 0 Then Zeile = WorksheetFunction.Match(ComboBox1.Text, Columns(9), 0) 'ComboBox1.ListIndex + 2 strKFZKennz = objWs.Cells(Zeile, 1) msgbox (strKFZKennz) With frm_Eingabe For i = 1 To 8 'Kundendaten .Controls("Textbox" & i) = objWs.Cells(Zeile, i) Next i For i = 9 To 11 'Kfz-Daten .Controls("Textbox" & i) = objWs.Cells(Zeile, i + 3) Next i .Controls("Combobox1") = strKFZKennz .Controls("Combobox2") = "Rechnung" .Controls("Textbox100") = "R" & Mid(objWs.Cells(Zeile, 9), 2, 8) For i = 15 To 25 ' Arbeitsgang 1 - 11 .Controls("Textbox" & i) = objWs.Cells(Zeile, i) Next i For i = 26 To 36 ' Arbeitswert zu Arbeitsgang 1 - 11 .Controls("Textbox" & i + 75) = objWs.Cells(Zeile, i) Next i For i = 37 To 47 ' Einzelpreis zu Arbeitsgang 1 - 11 .Controls("Textbox" & i + 164) = objWs.Cells(Zeile, i) Next i For i = 48 To 58 ' Euro-Betrag zu Arbeitsgang 1 - 11 .Controls("Textbox" & i + 253) = objWs.Cells(Zeile, i) Next i .Controls("Textbox200") = objWs.Cells(Zeile, 59) ' Gesamtsumme End With Unload frm_Anzeige 'oder Me frm_Eingabe.Show End If End SubKönntest Du mir das da mal bitte einbauen? Eine gute Idee war es auch, den Click-Event der Combobox zu nehmen und den OK-Button zu entfernen. Warum wird das msgbox (strKFZKennz) vom Editor nicht automatisch so umgewandelt: MsgBox (...)? | ||||||||||||||||||||
|
Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste