Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1920to1924
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

Komboboxen Problem

Komboboxen Problem
09.03.2023 06:33:32
Sascha
Hallo zusammen!
Ich nutze Office 365 und baue zur Zeit an einer Excel-Datenbank.
Mein Problem betrifft in einer Userform die Komboboxen, wo ich absolut nicht weiterkomme.
Tabelle: Banddicke, Bandbreite, Gewicht. Sortiert nach Banddicke (dünn->dick)
Userform mit Kombobox1 (banddicke); Kombobox2 (bandbreite); Textbox (gewicht) zur Ausgabe des Gewichtes und eine Textbox(dicke) zur Kontrolle.
Ich wähle zuerst in KB1 die Banddicke aus, dann in der nach Filter gefüllte KB2 die Bandbreite aus. In der Textbox Gewicht soll dann das Gewicht erscheinen, in der Textbox dicke soll zur kontrolle die Banddicke nochmal angezeigt werden.
Zur Auswahl Momentan: 0,70mm, 0,90mm (Beide unteranderem x 1000mm, 1200mm)
Ich wähle 0,70x1000mm aus, kommt das richtige Gewicht 5,6kg. Ich wähle 0,90x1000mm aus, kommt das Gewicht 5,6kg und in der Kontrollbox steht 0,70mm.
Excel scheint hier immer den ersten Datensatzeintrag zu wählen, der die 1000mm hat. Auch so mit 1200mm. Wie bekomme ich das hin, daß Excel das richtig zuordnet? Und warum zeigt mir die KB Bandbreite nichts an, wenn ich in der KB Banddicke nur die Zahl, zB 1, stehen habe. In dem Tabellenfeld muss 1,00mm stehen. Wäre für Hilfe absolut Dankbar!!!
Hier die Testdatei
https://www.herber.de/bbs/user/158190.xlsm
Und hier der Code
Private Sub bandbreite_Change()
Set finden = Worksheets("Tabelle1").Columns(3).Find(what:=bandbreite, lookat:=xlWhole, LookIn:=xlValues)
dicke = finden.Offset(0, -1)
gewicht = finden.Offset(0, 1)
End Sub
Private Sub banddicke_Change()
bandbreite.Clear
bandbreite.Enabled = True
Dim Zeile As Long
Dim tbl As ListObject
Set tbl = Tabelle1.ListObjects("Kilogramm")
For Zeile = 1 To tbl.DataBodyRange.Rows.Count
If banddicke.Value = tbl.DataBodyRange(Zeile, 2).Value Then
bandbreite.AddItem tbl.DataBodyRange(Zeile, 3).Value
End If
Next Zeile
End Sub
Private Sub UserForm_Initialize()
banddicke.List = Range("Kilogramm[Dicke]").Value
Dim odic As Object
Set odic = CreateObject("scripting.dictionary")
Dim cell As Range
For Each cell In Tabelle1.Range("Kilogramm[Dicke]")
odic(cell.Value) = 0
Next cell
banddicke.List = odic.keys
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Komboboxen Problem
09.03.2023 06:47:16
ede
Guten Morgen Sascha,
warum nochmal suchen, wenn Du es schon selektiert hast.

Private Sub bandbreite_Change()
Set finden = Worksheets("Tabelle1").Columns(3).Find(what:=bandbreite, lookat:=xlWhole, LookIn:=xlValues)
'dicke = finden.Offset(0, -1)
dicke = banddicke.Value
gewicht = finden.Offset(0, 1)
End Sub
Gruss
Ede
AW: Komboboxen Problem
09.03.2023 12:35:27
Sascha
Hallo
Klappt leider nicht. Er zeigt mir dadurch zwar die ausgewählte Dicke (0,90mm) in der Textbox an, nimmt aber trotzdem das Gewicht mit der ersten Abmessung (0,70mm)
Gruß, Sascha
AW: Komboboxen Problem
09.03.2023 13:54:26
ede
Hallo nochmal,
das liegt aber an deinem fehlerhaften Code, anbei mal etwas umgebauter Code für Sub bandbreite_Change()

Private Sub bandbreite_Change()
'Set finden = Worksheets("Tabelle1").Columns(3).Find(what:=bandbreite, lookat:=xlWhole, LookIn:=xlValues)
'dicke = finden.Offset(0, -1)
'gewicht = finden.Offset(0, 1)
Dim wb As Workbook
Dim ws As Worksheet
Dim Zeile As Long
Set wb = ThisWorkbook
Set ws = wb.Sheets("Tabelle1")
letztezeile = ws.UsedRange.SpecialCells(xlCellTypeLastCell).Row
For Zeile = 1 To letztezeile
    If Me.banddicke.Value = ws.Cells(Zeile, 2) And _
       Val(Me.bandbreite.Value) = ws.Cells(Zeile, 3) Then
        Me.gewicht = ws.Cells(Zeile, 4)
    End If
Next Zeile
Me.dicke = Me.banddicke.Value
Me.Caption = "Gewicht auf " & Me.banddicke.Value & "/" & Me.bandbreite.Value
End Sub
Gruss
Ede
Anzeige
AW: Komboboxen Problem
09.03.2023 15:00:41
Sascha
Sehr Geil!
Ganz vielen lieben Dank! Genau das habe ich so gewollt/gesucht.
Viele Grüße, Sascha
AW: Komboboxen Problem
09.03.2023 15:06:31
ede
bitte, für die Spalte 2 solltest Du dich für nur Text entscheiden, dann klappt es auch mit der "1" in Zeile 2 (1 --> 1 mm).
AW: Komboboxen Problem
09.03.2023 07:35:56
SF
Hola,
sagst du dann bitte im anderen Forum Bescheid dass du weiter gezogen bist?
Danke.
Gruß,
steve1da
AW: Komboboxen Problem
09.03.2023 12:33:38
Sascha
Hallo
Wie meinst Du das? Habe die Frage in noch einem Forum zur Lösungsfindung
Gruß Sascha
AW: Komboboxen Problem
09.03.2023 13:57:07
SF
Dann verlink bitte wenigstens beide Threads miteinander.
https://www.excel-ist-sexy.de/crossposting
Im anderen Forum stehts sogar unter jedem Beitrag.
Anzeige
Komboboxen Problem erledigt
09.03.2023 15:07:00
Sascha
Erledigt! Vielen herzlichen Dank nochmal
Grüße

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige