Kopieren - Einfügen aus dynamischen Range
22.04.2004 11:01:18
Torsten K.
folgenden Code habe ich z.T. mit Hilfe des Forums zusammengebastelt:
Private Sub cmb_START_Click()
Application.ScreenUpdating = False
Dim i As Integer
Dim J As Integer
J = 4
Sheets("SEARCH").Unprotect Password:="Kennwort"
With Sheets("SEARCH").Range("B4:G70")
.ClearContents 'Ergebnis der letzten Abfrage wird gelöscht
.Font.ColorIndex = 0
End With
For i = 2 To 867
If Sheets("ENTER").Range("B" & i).Value Like Sheets("SEARCH").Range("B1").Value Then
Sheets("ENTER").Range("B" & i & ":G" & i).Copy _
Destination:=Sheets("SEARCH").Range("B" & J)
J = J + 1
End If
Next
(...)
End Sub
Mit diesem Code kann ich einen bestimmten Bereich aus dem WS ("ENTER") kopieren und in das WS ("SEARCH") ab Spalte B einfügen. Der Bereich aus dem WS ("ENTER") ist durch i = 2 To 867 vorbestimmt. Das hat einen Nachteil: Wenn ich in dem WS ("ENTER") weitere Eingaben mache verschiebt sich der Bereich entsprechend weiter z.B. To 870 und ich muß das manuell im Code anpassen.
Ich möchte das gerne dynamisch gestalten und habe mal versucht mit
Dim rng as Range
Set rng = Sheets("ENTER").Range("DATEN1") 'wobei "DATEN1" der Name des Bereichs B2:G867 im WS ("ENTER") ist.
Ich weiß jetzt allerdings nicht, wie ich das weiter in meinen bestehenden Code einbinden muß. Habe ich mich verständlich ausgedrückt und könnt Ihr mir helfen?
Falls notwendig, kann ich die Datei (220KB) auch gerne hochladen.
Vielen Dank für Eure Hilfestellungen.
Gruß
Torsten