Zeilen suchen und kopieren
22.07.2003 15:12:34
nemac
Ich hab ein Worksheet wo ich mit einer Schleife die daten aus der Spalte B auslese und sie in einem anderen Workbook suche. Die gefundene Zeile wird dann in ein drittes Workbook kopiert.
Beim Debuggen funzt das alles wunderbar ; wenn ich aber den dazugehörigen Button drücke geht das bis zu der schleife und überspringt die und hört auf !!
also er macht die dateien auf und ordnet die variablen zu; aber es werden keine zeilen übertragen.
Was kann hier das Problem sein ???
Kann es vielleicht sein das er nach dem Suchschleifen durchlauf eine Pause braucht? ( gibts hier vielleicht einen - analog zu dem sleep-befehl aus c++ - pausenbefehl)
Hier der Code:
Private Sub CommandButton1_Click()
Workbooks.Open Filename:="REPORT1.xls"
Workbooks.Open Filename:="PROBLEMLISTE.XLS"
Dim i As Integer
Dim n As Integer
Dim A As String
Dim WB1 As Workbook
Dim WB2 As Workbook
Dim WB3 As Workbook
Dim WS1 As Worksheet
Dim WS2 As Worksheet
Dim WS3 As Worksheet
Workbooks("REPORT1").Activate
Worksheets(1).Activate
Set WB1 = ActiveWorkbook
Set WS1 = ActiveSheet
Workbooks("PROBLEMLISTE.XLS").Activate
Worksheets(1).Activate
Set WB2 = ActiveWorkbook
Set WS2 = ActiveSheet
Workbooks("filter.xls").Activate
Worksheets(1).Activate
Set WB3 = ActiveWorkbook
Set WS3 = ActiveSheet
n = 8
WS1.Activate
For i = 2 To WS1.Range("B200").End(xlUp).Row
A = WS1.Cells(i, 2)
WS2.Activate
With WS2.Range("D11:D2000")
Set c = .Find(A, LookIn:=xlValues)
If Not c Is Nothing Then
firstaddress = c.Address
Do
c.EntireRow.Copy
WS3.Activate
ActiveSheet.Rows(n).Activate
ActiveSheet.Paste
n = n + 1
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstaddress
End If
End With
Next i
End Sub