Hallo zusammen,
ich bräuchte einmal bei folgender Sache Hilfe:
Ich möchte anhand von zwei Auswahlmöglichkeiten in Comboboxen die entsprechenden Zeilen einer Tabelle, in der die Kriterien vorkommen, in ein anderes Excel Blatt kopieren beim Klick auf einen Button.
Aktuell ist es so, dass nur bei der Vorauswahl (siehe Foto) des Userforms die Abfrage funktioniert und die entsprechenden Zeilen in ein neues Blatt ausgegeben werden. Sobald ich einen anderen Wert in der Combobox "Kontinent" einstelle, wird nur die zweite Zeile der Tabelle kopiert. Ich stehe gerade etwas auf dem Schlauch da ich noch Anfänger bin, kann mir hier vielleicht jemand helfen?
Link zum Bild: https://ibb.co/wdf1kZS
Code:
Private Sub btn_ausgabe_Click()
Dim lngzeile As Long
Dim lngzeilemax As Long
Dim rngbereich As Range
Tabelle2.Cells.Clear
With Tabelle2
.Range("A1") = "Flüge in den Kontinent"
.Range("B1") = Me.cmb_kontinent
.Range("C1") = "für das Jahr:"
.Range("D1") = Me.cmb_Jahr
.Range("E1") = "Kategorie"
.Range("F1") = Me.cmb_Kategorie
.Range("A3") = "Flugnummer"
.Range("B3") = "Beförderte Passagiere"
.Range("C3") = "Umsatz/€"
.Range("D3") = "Marketingausgaben/€"
End With
With Tabelle1
Set rngbereich = .Rows(2)
lngzeilemax = Worksheets("Tabelle1").Range("A" & Rows.Count).End(xlUp).Row
For lngzeile = 2 To lngzeilemax
If .Cells(lngzeile, 1).Value = (Me.cmb_kontinent) And .Cells(lngzeile, 3).Value = (Me.cmb_Jahr) Then
Set rngbereich = Union(rngbereich, .Rows(lngzeile))
End If
Next lngzeile
'Bestimmte Bereiche der Zeile sollen kopiert werden
rngbereich.Columns("B").Copy Destination:=Tabelle2.Range("A4")
rngbereich.Columns("E").Copy Destination:=Tabelle2.Range("B4")
rngbereich.Columns("F").Copy Destination:=Tabelle2.Range("C4")
rngbereich.Columns("G").Copy Destination:=Tabelle2.Range("D4")
End With
End Sub
|