Hallo,
die Excel Tabelle bezüglich derer ich schon einmal hier eine Frage gestellt habe, macht mir weiter sorgen
Diesmal möchte ich eine UserForm einfügen die das Kopieren einzelner Einträge einer großen Tabelle ermöglicht.
Dazu habe ich den Kopier-Button der Userform wie folgt belegt:
'------------------------------------------
Private Sub kopieren_Click()
If Me.obnew = True Then
ActiveWorkbook.Worksheets.Add
Sheets(„Tabelle 1“).name = Me.txttab
End If
Dim ws1 As Worksheet, ws2 As Worksheet, iRow As Long, iRow2 As Long
Set ws1 = Worksheets(„Entwicklung“)
Set ws2 = Worksheets(Me.txttab)
iRow = ws1.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
iRow2 = ws2.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
For i = 2 To 19
If CStr(ws1.Cells(2, i)) = copykrit1 Then
For j = 3 To iRow
If CStr(ws1.Cells(j, i)) = Me.copykrit2 Then
For k = 1 To 20
ws2.Cells(iRow2, k) = Me.ws1.Cells(j, k)
Next k
End If
Next j
End If
Next i
End Sub
'-----------------------------------------
Erklärung der Bezeichnungen:
obnew:
Optionsbox die abfragt ob eine neue tabelle erstellt werden soll, oder die Daten in eine bestehende Tabelle kopiert werden sollen.
txttab:
Textfeld in das der Name der neuen bzw. der bestehenden Tablle eingetragen wird.
copykrit1:
Erster Kpierkriterium (Spaltenname [z.B. Auftragsnummer, Kunde, Bauform, Status, usw.])
copycrit2:
Zweites Kopierkriterium (unterpunkte in spalten unter copykrit1 [Beispiel für copykrit1 = Kunde: Peter, Jürgen, Hans, Rüdiger usw.])
Die UserForm soll also bei Klick auf den Kopieren Button alle Daten aus der erste Tabelle die das zweite Kopierkriterium erfüllen. In eine neue bzw. bestehende Tabelle kopieren.
(Beispiel für copykrit1=Kunde und copykrit2=Peter: Kopiere alle Spalten (Aufträge) die an Peter geliefert werden an eine neue/bestehende Tabelle)
Ich hoffe man kann verstehen was ich mit der UserForm erreichen möchte und dass ihr mir da weiterhelfen könnt.
Schonmal vielen Dank im Voraus,
Simon