Re: Import, wenn nicht vorhanden
26.11.2002 12:36:45
M. Kuhn
Moin Norbert,etwa so:
Sub Involve()
Dim Datei_1 As Object, Datei_2 As Object
Dim i As Integer, j As Integer
Dim lngFirstFreeRow As Long ' Nr. erste freie Zeile in Datei 1
Dim lngLastFoundRow As Long ' Nr zu kopierende Zeile aus Datei 2
j = 1
Set Datei_1 = Application.Workbooks("Datei1.xls").Worksheets(1)
Set Datei_2 = Application.Workbooks("Datei2.xls").Worksheets(1)
For i = 1 To Datei_1.UsedRange.End(xlUp)
If Datei_1.Cells(i, 1) = "" Then ' erste freie Zeile zum Einfügen finden
lngFirstFreeRow = i
Exit For
End If
Next i
While j < Datei_2.UsedRange.End(xlUp)
For i = 1 To lngFirstFreeRow - 1
If Datei_2.Cells(j, 1).Value = Datei_1.Cells(i, 1).Value Then
i = 0
j = j + 1
Exit For
End If
Next i
If i = lngFirstFreeRow Then ' wenn keine Übereinstimmung
Datei_2.Activate
Datei_2.Range("A" & j, "IV" & j).Select
Selection.Copy
Datei_1.Activate
Datei_1.Range("A" & lngFirstFreeRow, "IV" & lngFirstFreeRow).Select
Selection.PasteSpecial
lngLastFoundRow = lngLastFoundRow + 1
lngFirstFreeRow = lngFirstFreeRow + 1
j = j + 1
i = 0
End If
Wend
End Sub