ich benötige ein bisschen Hilfestellung. Ich habe mir mittels Internet und diesem Forum folgenden Code zusammengebastelt:
Sub Pers1()
'Es werden alle vorhandenen Datensätze aus der Quelle in das Ziel kopiert
Dim wkQuelle As Worksheet, wkziel As Long
Dim cnt As Long, aktzeile As Long, erstzeile As Long
Dim LastRowAll As Long, LastColAll As Long
Set wkQuelle = Worksheets("LeitE")
Set wkziel = Worksheets("Telefonverzeichnis")
aktzeile = wkziel.Cells.Find(What:="*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row _
+ 2
erstzeile = wkziel.Cells.Find(What:="*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious). _
Row + 3
With wkQuelle
If .FilterMode Then .ShowAllData
.ListObjects("KK_LeitE").Range.AutoFilter Field:=19, Criteria1:=""
For cnt = 1 To .Cells(Cells.Rows.Count, "A").End(xlUp).Row
wkziel.Cells(aktzeile, 1) = .Cells(cnt, 6)
wkziel.Cells(aktzeile, 2) = .Cells(cnt, 7)
wkziel.Cells(aktzeile, 3) = .Cells(cnt, 8) & ", " & .Cells(cnt, 9)
wkziel.Cells(aktzeile, 4) = .Cells(cnt, 19)
aktzeile = aktzeile + 1
Next
End With
LastRowAll = Cells.Find(What:="*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
LastColAll = ActiveSheet.Cells.Find(What:="*", SearchOrder:=xlByColumns, SearchDirection:= _
xlPrevious).Column
'Als Tabelle formatieren:
wkziel.ListObjects.Add(xlSrcRange, Range(Cells(erstzeile, 1), Cells(LastRowAll, LastColAll)), , _
xlYes).Name = "Tel_Pers1"
wkziel.ListObjects("Tel_Pers1").TableStyle = "TableStyleLight11"
Set wkziel = Nothing
Set wkQuelle = Nothing
End Sub
Durch den Autofilter für Spalte 19 soll die Quelltabelle nur diese Einträge anzeigen, welche in Spalte 19 einen Wert beinhalten. Leere Zeilen sollen ausgeblendet werden. In der weiteren Folge sollen auch nur die sichtbaren Zeilen kopiert werden. Und da liegt bei mir das Problem. Das vorliegende Makro kopiert auch die Zeilen/Zellen, welche in Spalte 19 keinen Wert haben. Könnt ihr mir bitte Hilfestellung geben? Gruß Romy