Hallo Zusammen,
ich bin derzeit dabei mir ein kleines Makro zu erarbeiten, was folgendes können soll:
1. Letzte Zelle aus Spalte B in Workbook1 finden.
2. Wert aus dieser Zelle nehmen
3. Diesen Wert in Spalte U des Workbooks2 suchen
4. Wenn der Wert gefunden wird -> Ende
5. Falls der Wert nicht gefunden wird, die komplette Zeile aus Workbook1 in derm der Wert stand kopieren und in Workbook3 kopieren.
( Die Werte aus Workook1 sollen von der letzten Spalte vom letzten bis zum ersten Wert der reihe nach durchsucht werden)
DIe nicht gefundenen Werte sollen ebenfalls der Reihe nach von Zeile 2 beginnend hintereinander in Workbook3 kopiert werden, ohne dass eine Zeile verloren geht bzw. überschrieben wird.
BIsher habe ich folgenden Code:
Option Explicit
Private Sub CommandButton1_Click()
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Variablen
Dim lngZeile As Long
Dim lngZeileZiel As Long
Dim WO As String
Dim rngWO ' As Range
Dim oCol As Long
Dim myCell
Dim mycellx
Dim x As Long
Dim nextRow As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Aktivieren des Produktionsplans
Workbooks("Produktionsplan.xlsx").Activate
'Tabelle RS2 aktivieren
Worksheets("RS2").Activate
'letzte Zelle in Spalte B auswählen
ActiveSheet.Columns("B:B").Select
'letzte beschriebene Zelle finden
lngZeile = ActiveSheet.Cells(Columns.Count, 2).End(xlUp).Row
For x = lngZeile To 2 Step -1
WO = ActiveSheet.Cells(x, 2).Value
For Each myCell In Workbooks("A.xlsm").Worksheets("PartsData").Columns("U")
If myCell.Value = WO Then
Exit For
Else: Workbooks("Produktionsplan.xlsx").Worksheets("RS2").Rows(x).Copy _
Destination:=Workbooks("FW.xlsx").Worksheets("Sheet1").Cells(Rows.Count, 1).End(xlUp)
oCol = 2
Workbooks("FW.xlsx").Cells(nextRow, oCol).Value = myCell.Value
oCol = oCol + 1
End If
Next myCell
Next x
End Sub
bis zur Zeile: If myCell.Value = WO Then funktioniert alles, allerdings bekomme ich dann die Fehlermeldung: Runtime error "13" Type mismatch.
Kann mir hier bitte jemand weiterhelfen?
Vielen Dank im Voraus.
P.s: Meine Schleife unten passt auch noch nicht ganz. Ich bin noch ein VBA Anfänger und habe diese letzten Zeilen erst mal nur aus einem Forum kopiert, um es dann anzupassen. Schön wäre es vlt auch die Arbeitsmappen automatisch zu öffnen wenn man auf einen button clickt.
|