Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Excel VBA mit Find-Methode Bereich kopieren

Excel VBA mit Find-Methode Bereich kopieren
22.02.2018 11:48:34
Chris
Hallo zusammen,
ich bin neu hier und brüte an einem Problemchen...
Es geht um einen Code, der auf Seite Test1 (bei sortierten Werten) die ersten und die letzte Zeile mit einem bestimmten Wert finden soll.
Dann soll dieser Bereich auf die Seite Test2 kopiert werden.

Sub Finden_Markieren()
Dim Fund_erste As Range, Fund_letzte As Range, lastCell As Long, lastColumn As Integer, wks1 As  _
_
Worksheet, wks2 As Worksheet
Set wks1 = Worksheets("Test1")
Set wks2 = Worksheets("Test2")
With wks1
lastCell = .Range("A65536").End(xlUp).Row
lastColumn = .UsedRange.Columns.Count
'Set Fund_erste = .Range("A:A").Find(3, Cells(1), xlValues, xlWhole, xlByColumns, xlNext)
Set Fund_erste = .Range(.Cells(1, 1), .Cells(1, lastCell)).Find(3, Cells(1), xlValues, xlWhole,  _
_
xlByColumns, xlNext)
'Set Fund_letzte = .Range("A:A").Find(3, Cells(1), xlValues, xlWhole, xlByColumns, xlNext)
Set Fund_letzte = .Range(.Cells(1, 1), .Cells(1, lastCell)).Find(3, Cells(1), xlValues, xlWhole, _
_
xlByColumns, xlNext)
'If Not Fund Is Nothing Then
'  MsgBox "Erste Zeile: " & Fund.Row
'  Set Fund = .Range("A:A").Find(3, Cells(1), xlValues, xlWhole, xlByColumns, xlPrevious)
' MsgBox "Letzte Zeile: " & Fund.Row
'.Rows("1:" & Rng.Row).Delete
'.Range(.Cells(Fund_erste, 1), .Cells(Fund_letzte, lastColumn)).Select
.Range(.Cells(Fund_erste, 1), .Cells(Fund_letzte, lastColumn)).Copy _
Destination:=wks2.Range("A65536").End(xlUp).Offset(1, 0)
'End If
End With
Set wks1 = Nothing
Set wks2 = Nothing
Set Fund_erste = Nothing
Set Fund_letzte = Nothing
End Sub


Allerdings bekomme ich den Laufzeitfehler 13 "Typen unverträglich".
Leider habe ich keine Ahnung, wie ich den Code zum Laufen kriegen...
Kann mir jemand helfen?
Danke!
Chris

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel VBA mit Find-Methode Bereich kopieren
22.02.2018 12:10:26
Rudi
Hallo,
bei sortierten Werten würde ich das so machen:
Sub aaa()
Dim vntFirstRow, lngCount As Long
Dim wks1 As Worksheet, wks2 As Worksheet
Set wks1 = Worksheets("Test1")
Set wks2 = Worksheets("Test2")
vntFirstRow = Application.Match(3, wks1.Columns(1), 0)
If Not IsError(vntFirstRow) Then
lngCount = Application.CountIf(wks1.Columns(1), 3)
wks1.Cells(vntFirstRow, 1).Resize(lngCount).EntireRow.Copy wks2.Cells(Rows.Count, 1).End( _
xlUp).Offset(1)
Else
MsgBox "Nicht gefunden!", , "Gebe bekannt..."
End If
End Sub

Gruß
Rudi
AW: Excel VBA mit Find-Methode Bereich kopieren
22.02.2018 12:18:37
Chris
Hallo Rudi,
das probiere ich mal aus.
Besten Dank schon mal!
Viele Grüße
Chris
Anzeige

325 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige