Thema Datum  Von Nutzer Rating
Antwort
09.01.2016 13:54:13 Matthias
NotSolved
09.01.2016 15:17:51 Gast23553
NotSolved
09.01.2016 19:35:30 Matthias
NotSolved
10.01.2016 15:10:50 Matthias
NotSolved
10.01.2016 17:06:45 Matthias
NotSolved
10.01.2016 18:07:08 Gast47001
NotSolved
10.01.2016 18:16:23 Matthias
NotSolved
10.01.2016 19:18:07 Gast78858
NotSolved
10.01.2016 19:44:03 Matthias
NotSolved
10.01.2016 20:37:49 Gast75511
NotSolved
10.01.2016 22:20:14 Peter
NotSolved
10.01.2016 22:53:57 Gast93497
NotSolved
11.01.2016 18:34:16 Matthias
NotSolved
11.01.2016 20:58:11 Gast24821
NotSolved
12.01.2016 19:03:51 Matthias
NotSolved
12.01.2016 20:46:37 Matthias
NotSolved
16.01.2016 10:28:33 Matthias
NotSolved
16.01.2016 11:35:23 Gast7340
NotSolved
16.01.2016 13:43:18 Matthias
NotSolved
16.01.2016 20:27:06 Gast59546
NotSolved
16.01.2016 20:43:49 Matthias
NotSolved
16.01.2016 23:05:06 Gast27892
NotSolved
17.01.2016 10:36:14 Matthias
NotSolved
17.01.2016 12:34:32 Matthias
NotSolved
17.01.2016 13:21:30 Gast21379
NotSolved
17.01.2016 14:17:36 Matthias
NotSolved
17.01.2016 14:51:02 Gast31799
NotSolved
17.01.2016 15:38:49 Matthias
NotSolved
17.01.2016 17:43:45 Gast59516
NotSolved
17.01.2016 18:06:12 Gast90961
NotSolved
Rot Daten auf einzelne Sheets aufteilen
17.01.2016 18:30:40 Gast8489
NotSolved
17.01.2016 18:48:34 Matthias
Solved
17.01.2016 19:11:44 Gast41059
NotSolved

Ansicht des Beitrags:
Von:
Gast8489
Datum:
17.01.2016 18:30:40
Views:
717
Rating: Antwort:
  Ja
Thema:
Daten auf einzelne Sheets aufteilen

Also dann folgt jetzt unten der Code. Der Durchläuft 8 mal eine Schleife. Je nach Durchlaufindex wird ein andere Filter gesetzt und eine andere Spalte kopiert.
Mal schnell im Durchlauf:
1. Durchlauf i = 1
Spalte A bis M Filter A oder B in M gesetzt
neues Blatt
A bis D kopiert
Spalte 7 (= G) kopiert
Name aus der eingefügten Spalte

2. Durchlauf i = 2
Spalte A bis M Filter, A oder B in M gesetzt
neues Blatt
A bis D kopiert
Spalte 8 (= H) kopiert
Name aus der eingefügten Spalte

und so weiter bis 6, wobei hier bis Spalte L kopiert wird - wird geregelt über .UsedRange.Columns(i + 6).Copy ActiveSheet.Cells(1, 5), beachte dabei Wert von i

7. Durchlauf i = 7
Spalte A bis M Filter C in M gesetzt
neues Blatt
A bis D kopiert
Spalte 11 (= K) kopiert  - das wid hierüber geregelt .UsedRange.Columns(i + 4), beachte Wert von i
Name aus der eingefügten Spalte + C

8. Durchlauf i = 1
Spalte A bis M Filter C in M gesetzt
neues Blatt
A bis D kopiert
Spalte 12 (= L) kopiert
Name aus der eingefügten Spalte + C

Ende der Durchläufe


Das sollte so sein, wie du es wolltest, Geh das oben (die Durchläufe) bitte mal durch und schau, was anders werden soll.
Hier nun der Code.

 

Sub blatt_nach_Filter_erzeugen()
 
Dim i As Integer
 
Application.ScreenUpdating = False
 
'Blatt eins als Ausgang
With Worksheets(1)

' 6 für A/ B und 2 für C deshalv 8 Durchläufe kann man ändern, dann aber beim Filter darauf achten, wann C kommt
For i = 1 To 8
    'Filter setzen
    If i < 7 Then
    'für die mit A und B
        .Range("$A:$M").AutoFilter Field:=13, Criteria1:="=*A*", Operator:=xlOr, Criteria2:="=*B*"
    Else
    ' die zwei für C ab Durchlauf 7
        .Range("$A:$M").AutoFilter Field:=13, Criteria1:="=*C*"
    End If
     
    ' Blatt einfügen
    Worksheets.Add After:=Sheets(Sheets.Count)
    'A bis D kopieren - wird gefilter kopiert - kann man aber auch wandeln, dass die 4 Spalte ungefilter eingefügt werden und dann erst der Filter kommt
    .UsedRange.Range("A:D").Copy ActiveSheet.Cells(1)
    ' jeztt noch die Spalte je nach Index einfügen
    If i < 7 Then
    .UsedRange.Columns(i + 6).Copy ActiveSheet.Cells(1, 5)
    Else
    ' wiede rbei 7 und 8
    .UsedRange.Columns(i + 4).Copy ActiveSheet.Cells(1, 5)
    End If
    ' Namen festlegen nach jew. Spalte
    
    If i > 6 Then
    ActiveSheet.Name = ActiveSheet.Cells(1, 5) + "C"
    Else
    ActiveSheet.Name = ActiveSheet.Cells(1, 5)
    End If
Next i
'im Ausgang den Filter wieder rausnehmen
.Range("$A:$M").AutoFilter
 
End With
 
Application.ScreenUpdating = True
 
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
09.01.2016 13:54:13 Matthias
NotSolved
09.01.2016 15:17:51 Gast23553
NotSolved
09.01.2016 19:35:30 Matthias
NotSolved
10.01.2016 15:10:50 Matthias
NotSolved
10.01.2016 17:06:45 Matthias
NotSolved
10.01.2016 18:07:08 Gast47001
NotSolved
10.01.2016 18:16:23 Matthias
NotSolved
10.01.2016 19:18:07 Gast78858
NotSolved
10.01.2016 19:44:03 Matthias
NotSolved
10.01.2016 20:37:49 Gast75511
NotSolved
10.01.2016 22:20:14 Peter
NotSolved
10.01.2016 22:53:57 Gast93497
NotSolved
11.01.2016 18:34:16 Matthias
NotSolved
11.01.2016 20:58:11 Gast24821
NotSolved
12.01.2016 19:03:51 Matthias
NotSolved
12.01.2016 20:46:37 Matthias
NotSolved
16.01.2016 10:28:33 Matthias
NotSolved
16.01.2016 11:35:23 Gast7340
NotSolved
16.01.2016 13:43:18 Matthias
NotSolved
16.01.2016 20:27:06 Gast59546
NotSolved
16.01.2016 20:43:49 Matthias
NotSolved
16.01.2016 23:05:06 Gast27892
NotSolved
17.01.2016 10:36:14 Matthias
NotSolved
17.01.2016 12:34:32 Matthias
NotSolved
17.01.2016 13:21:30 Gast21379
NotSolved
17.01.2016 14:17:36 Matthias
NotSolved
17.01.2016 14:51:02 Gast31799
NotSolved
17.01.2016 15:38:49 Matthias
NotSolved
17.01.2016 17:43:45 Gast59516
NotSolved
17.01.2016 18:06:12 Gast90961
NotSolved
Rot Daten auf einzelne Sheets aufteilen
17.01.2016 18:30:40 Gast8489
NotSolved
17.01.2016 18:48:34 Matthias
Solved
17.01.2016 19:11:44 Gast41059
NotSolved