Thema Datum  Von Nutzer Rating
Antwort
09.02.2012 20:46:43 DETEGE
NotSolved
10.02.2012 00:54:44 Till
NotSolved
Rot Nach bestimmter anzahl an Zellen neue datei erstellen
10.02.2012 08:33:54 Sino
NotSolved
10.02.2012 18:30:53 Till
NotSolved
12.02.2012 14:52:45 Gast416
NotSolved
13.02.2012 10:44:24 Sino
NotSolved
13.02.2012 21:00:40 Till
NotSolved
14.02.2012 08:30:52 Sino
NotSolved
15.02.2012 08:24:18 Sino
NotSolved
15.02.2012 08:27:38 Till
*****
Solved
15.02.2012 10:00:59 Sino
NotSolved

Ansicht des Beitrags:
Von:
Sino
Datum:
10.02.2012 08:33:54
Views:
1057
Rating: Antwort:
  Ja
Thema:
Nach bestimmter anzahl an Zellen neue datei erstellen

Hallo zusammen,

mein Problem ist ein ähnliches:

wie kann ich denn in einer Excel-Datei nach einer bestimmten "Anzahlschritten" jeweilst neue Dateien generieren. Bisher habe ich folgendes Makro gefunden, dass aber nur nach gleichnamigen Werten in Spalte A prüft und diese dann in Dateien splittet:

 

Public Sub aufteilen()

    Dim objDictionary As Object
    Dim objCell As Range, objCopyRange As Range
    Dim objWorkbook As Workbook
    Dim ialngIndex As Long
    Dim avntValues As Variant, avntKeys As Variant
    Dim strFirstAddress As String
    Application.ScreenUpdating = False
    With Tabelle1
        avntValues = .Range(.Cells(2, 1), .Cells(.Rows.Count, 1).End(xlUp)).Value2
    End With
    Set objDictionary = CreateObject("Scripting.Dictionary")
    For ialngIndex = LBound(avntValues) To UBound(avntValues)
        objDictionary(avntValues(ialngIndex, 1)) = vbNullString
    Next
    avntKeys = objDictionary.Keys
    Set objDictionary = Nothing
    With Tabelle1
        For ialngIndex = LBound(avntKeys) To UBound(avntKeys)
            Set objCell = .Columns(1).Find(What:=avntKeys(ialngIndex), _
                LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=True)
            If Not objCell Is Nothing Then
                strFirstAddress = objCell.Address
                Set objCopyRange = .Cells(1, 1)
                Do
                    Set objCopyRange = Union(objCopyRange, objCell)
                    Set objCell = .Columns(1).FindNext(objCell)
                Loop Until objCell.Address = strFirstAddress
                Set objWorkbook = Workbooks.Add(xlWBATWorksheet)
                objCopyRange.EntireRow.Copy Destination:=objWorkbook.Worksheets(1).Cells(1, 1)
                objWorkbook.Close SaveChanges:=True, Filename:= _
                    ThisWorkbook.Path & "\" & avntKeys(ialngIndex) & ".xls"
                Set objWorkbook = Nothing
                Set objCell = Nothing
                Set objCopyRange = Nothing
            End If
        Next
    End With
    Application.ScreenUpdating = True

End Sub

 

Danke für Feedback!

Gruß Sino


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.02.2012 20:46:43 DETEGE
NotSolved
10.02.2012 00:54:44 Till
NotSolved
Rot Nach bestimmter anzahl an Zellen neue datei erstellen
10.02.2012 08:33:54 Sino
NotSolved
10.02.2012 18:30:53 Till
NotSolved
12.02.2012 14:52:45 Gast416
NotSolved
13.02.2012 10:44:24 Sino
NotSolved
13.02.2012 21:00:40 Till
NotSolved
14.02.2012 08:30:52 Sino
NotSolved
15.02.2012 08:24:18 Sino
NotSolved
15.02.2012 08:27:38 Till
*****
Solved
15.02.2012 10:00:59 Sino
NotSolved