Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1772to1776
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Kundenabrechnungen aus Tabellenblatt

Kundenabrechnungen aus Tabellenblatt
07.08.2020 08:31:05
Elvis
Hallo Leute,
ich bräuchte einen VBA Code für folgende Aufgabenstellung:
Im Tabellenblatt sind in Spalte A Vermittlernummern eingetragen. Jede Nummer kommt mehrmals vor. Mittels VBA sollen nun alle Zeilen mit derselben Vermittlernummer in ein neues Tabellenblatt kopiert werden, wobei die Überschrift, sowie die Summenzeile (mit Teilsumme für dem der jeweiligen Vermittlernummer zugeordnete Beträge) ebenfalls kopiert werden soll.
Zur Abstimmung muss die Summe aller Teilsummen in den einzelnen Tabellenblättern wieder die Gesamtsumme laut Tabellenblatt Provisionen ergeben (Berechnung in Zelle H11 im Tabellenblatt Provisionen).
Abschließend soll jedes neue Tabellenblatt als eigene Arbeitsmappe unter "Provisionsabrechung & Vermittlernummer & Vermittler" (aus Spalten A und B) in einen bestimmten Ordner gespeichert werden.
Ich wäre sehr dankbar, wenn hier jemand helfen könnte!
Leider schaffe ich es nicht, meine Beispieldatei anzuhängen. Kann ich aber nachreichen.
LG
Elvis

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
und ohne wird dir kaum jemand...
07.08.2020 08:35:20
Werner
Hallo,
...helfen. Keiner hat Lust eine Beispielmappe anhand deiner Angaben nachzubauen (die dann in ihrem Aufbau wahrscheinlich sowieso nicht deinem Original entspricht), nur um dir helfen zu können.
Gruß Werner
AW: Kundenabrechnungen aus Tabellenblatt
07.08.2020 11:37:38
Elvis
Liebes Forum,
hoffe mit der Beispieldatei kann mir jemand helfen ;-) (musste als Neuling erst dahinter kommen, wie ich Dateien posten kann ;-) )
lg
Elvis
VBA: Kundenabrechnungen aus Tabellenblatt
10.08.2020 13:42:28
Elvis
Hallo Leute,
Ich versuche es noch einmal.
Ich bräuchte einen VBA Code für folgende Aufgabenstellung:
Im Tabellenblatt sind in Spalte A Vermittlernummern eingetragen. Jede Nummer kommt mehrmals vor. Mittels VBA sollen nun alle Zeilen mit derselben Vermittlernummer in ein neues Tabellenblatt kopiert werden, wobei die Überschrift, sowie die Summenzeile (mit Teilsumme für dem der jeweiligen Vermittlernummer zugeordnete Beträge) ebenfalls kopiert werden soll.
Zur Abstimmung muss die Summe aller Teilsummen in den einzelnen Tabellenblättern wieder die Gesamtsumme laut Tabellenblatt Provisionen ergeben (Berechnung in Zelle H11 im Tabellenblatt Provisionen).
Abschließend soll jedes neue Tabellenblatt als eigene Arbeitsmappe unter "Provisionsabrechung & Vermittlernummer & Vermittler" (aus Spalten A und B) in einen bestimmten Ordner gespeichert werden.
Ich wäre sehr dankbar, wenn hier jemand helfen könnte!
Die Datei ist unter folgendem Link:
https://www.herber.de/bbs/user/139522.xlsm
LG
Elvis
Anzeige
AW: VBA: Kundenabrechnungen aus Tabellenblatt
10.08.2020 14:58:32
peterk
Hallo
Hier ein erster Versuch. Ich verwende Spalte Z um die eindeutigen VM-NR zu bekommen. Die einzelnen Dateien werden im selben Verzeichnis gespeichert.

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("Provisionen")
On Error Resume Next
.ShowAllData
On Error GoTo 0
lastRow = .Cells(.Rows.Count, 1).End(xlUp).Row
.Range("A7: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("A6").AutoFilter field:=1, Criteria1:=.Cells(i, "Z")
Worksheets.Add After:=Worksheets(Worksheets.Count)
.AutoFilter.Range.Copy ActiveSheet.Range("A1")
sheetName = ActiveSheet.Range("A2") & "_" & ActiveSheet.Range("B2")
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
lastRow = Worksheets(sheetName).Cells(Worksheets(sheetName).Rows.Count, 1).End(xlUp) _
.Row
Worksheets(sheetName).Range("G" & lastRow + 1).Formula = "=Sum(G2:G" & lastRow & ")" _
Worksheets(sheetName).Copy
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\" & sheetName & ".xlsx"
Application.DisplayAlerts = True
ActiveWorkbook.Close False
Next i
.Range("A1").AutoFilter
.Columns("Z").ClearContents
End With
End Sub

Anzeige
AW: VBA: Kundenabrechnungen aus Tabellenblatt
11.08.2020 08:32:00
Elvis
Lieber Peter,
vielen, vielen Dank ;-)))) Absolut GENIAL. Funktioniert super. Ich musste nur den SheetName anpassen, da die max zulässige Zeichenanzahl für Tabellenblätter in manchen Fällen überschritten wurde:
sheetName = ActiveSheet.Range("A2") & "_" & Left(ActiveSheet.Range("B2"),20)
Ich liebe dieses Forum.
LG
Elvis
Danke für die Rückmeldung (owT)
11.08.2020 09:16:20
peterk

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige