VBA-Code für Datenaufteilung
24.10.2004 19:26:21
Helmut
Ich habe einen Code erhalten, der ist wirklich super, hat aber ein Problem.
Nach ca. 2800 Datensätzen hängt sich der Copm auf.
Der zerlegt alle Daten nach Postleitzahlen und schreibt sie in eigene Arbeitsblätter in der aktiven Arbeitsmappe.
Zusätzlich beschriftet er die Arbeitsblätter, formatiert sie wie die Ausgangsdatei und legt den Druckbereich fest.
Sieht jemand eine Ungereimtheit im Code, sodass er nur diese 2.800 Datensätze bearbeitet.
Anbei noch die Testtabelle mit Beschreibung.
https://www.herber.de/bbs/user/12590.xls
lg
Helmut
Code:
Sub Datenaufteilung_in_verschiedene_Arbeitsblätter()
ActiveSheet.Name = "Gesamtdaten"
Sheets("Gesamtdaten").Select
For Plz = 2 To Cells(Rows.Count, 8).End(xlUp).Row
Ort = Cells(Plz, 8) & " " & Cells(Plz, 9)
On Error Resume Next
Set ws = Sheets(Ort)
If Err > 0 Or ws Is Nothing Then
Sheets("Gesamtdaten").Copy After:=Sheets(Sheets.Count)
neuws = Sheets.Count
Sheets(neuws).Name = Ort
With Sheets(Ort)
lz = Cells(Rows.Count, 8).End(xlUp).Row
Range(Cells(2, 1), Cells(lz, 29)).Delete Shift:=xlUp
Sheets("Gesamtdaten").Select
End With
End If
On Error GoTo 0
lz = Sheets(Ort).Cells(Rows.Count, 8).End(xlUp).Row
Range(Cells(Plz, 1), Cells(Plz, 29)).Copy Sheets(Ort).Cells(lz + 1, 1)
Sheets(Ort).PageSetup.PrintArea = "$A$1:$AB$" & lz + 1
Next Plz
End Sub