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

Forumthread: VBA - Tabellenblatt erstellen/Copy Eintr

VBA - Tabellenblatt erstellen/Copy Eintr
25.08.2020 12:38:56
GismoTB
Hallo zusammen,
ich habe da eine Frage.
Ist es möglich per Makro folgendes druchzuführen:
Ich habe eine Exceltabelle mit vielen Spalten und Zeilen.
In Spalte A steht eine Materialnummer.
Jetzt möchte ich, dass per VBA für jede Materialnummer ein neues Tabellenblatt generiert und aus Blatt A alle Zeilen mit der dazugehörigen Materialnummer reinkopiert werden.
Am Ende sollte ich dann Blatt A als Masterfilde und für jede Materialnummer ein Arbeitsblatt mit den Daten aus Blatt A haben,
Ich bedanke mich schon mal für eure Hilfe.
Liebe Grüße
Thomas
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - Tabellenblatt erstellen/Copy Eintr
25.08.2020 12:51:12
Werner
Hallo,
dann lad mal deine Mappe mit ein paar dutzend Datensätzen hier hoch.
Gruß Werner
AW: VBA - Tabellenblatt erstellen/Copy Eintr
25.08.2020 13:50:26
peterk
Hallo
Ich verwende Spalte Z um die eindeutigen Materialnummern zu bekommen

Option Explicit
Sub Tabellen_erstellen()
Dim i As Long
Dim lastRow As Long
Dim sheetName As String
Dim ws As Worksheet
Application.ScreenUpdating = False
With Worksheets("Tabelle1")   ' anpassen
On Error Resume Next
.ShowAllData
On Error GoTo 0
lastRow = .Cells(.Rows.Count, 1).End(xlUp).Row
.Range("A2:A" & lastRow).Copy .Range("Z1")
.Range("Z1:Z" & lastRow).RemoveDuplicates Columns:=1, Header:=xlNo
For i = 1 To .Cells(.Rows.Count, "Z").End(xlUp).Row
.Range("A1").AutoFilter field:=1, Criteria1:=.Cells(i, "Z")
Worksheets.Add After:=Worksheets(Worksheets.Count)
.AutoFilter.Range.Copy ActiveSheet.Range("A1")
sheetName = .Cells(i, "Z")
For Each ws In ThisWorkbook.Worksheets
If ws.Name = sheetName Then
Application.DisplayAlerts = False
ws.Delete
Application.DisplayAlerts = True
End If
Next ws
ActiveSheet.Name = sheetName
Next i
.Range("A1").AutoFilter
.Columns("Z").ClearContents
End With
Application.ScreenUpdating = True
End Sub

Anzeige
AW: VBA - Tabellenblatt erstellen/Copy Eintr
25.08.2020 14:13:27
GismoTB
Vielen Dank.
Ich probiere es gleich mal aus.
Aber wie kommst du auf Spalte Z. Die ist doch leer
AW: VBA - Tabellenblatt erstellen/Copy Eintr
25.08.2020 14:20:42
peterk
Hallo
Ich brauch eine leere Spalte. Ich kopiere die Daten aus Spalte A nach Z und verwende "RemoveDublicates" um alle eindeutigen Materialnummern zu bekommen. Am Schluss lösche ich die Spalte wieder. Man könnte auch noch die Materialnummern sortieren falls gewünscht.
Peter
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige