Automatische Zeilen Sortierung



Excel-Version: Excel 97 und Excel 2000
nach unten

Betrifft: Automatische Zeilen Sortierung
von: Agic Jusuf
Geschrieben am: 06.05.2002 - 20:42:30

Hallo Forum,
Ich habe zwei EXCEL-Mappen, Mappe1.xls und Mappe2.xls.
Mappe1.xls hat nur eine Tabelle – Tabelle1
Mappe2.xls hat (bis jetzt) ca. 325 Tabellen – Tabellenamen sind Ganze Zahlen.
In Allen Tabellen werden Datensätzen eingetragen, im Bereich ab („A14:K14“).
In Spalte „A“ ist immer Datum eingetragen in der Format „ddmmyy“.
Datum kann sich mehrmals wiederholen, z.B. 1.5.02, 1.5.02 usw.
In Spalte „B“ ist immer eine Ganze Zahl eingetragen.
Es werden Täglich viele Datensätze eingetragen.

Ich möchte folgendes erreichen:

Nach Zeileneingabe sollen sich Datensätze automatisch einsortieren in
aufsteigende form, in beiden Mappen: in Mappe1.xls als auch in Mappe2.xls.

Ich habe ein Makro für sortieren gefunden, nur dem kann ich noch nicht für mich richtig anpassen! Bin VBA - Anfänger. Wer kann mir hier helfen?

Der Makro:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
Application.EnableEvents = False
Range("A1").Sort Key1:=Range("A2"), Order1:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom
Application.EnableEvents = True
End Sub

Wo soll ich hier entsprechnede Änderungen vornehmen, oder ich brauche was anderes?

nach oben   nach unten

Re: Automatische Zeilen Sortierung
von: Hans W. Herber
Geschrieben am: 07.05.2002 - 08:03:31

Hallo Jusuf,

das Change-Ereignis ist hier der falsche Ansatz, man sollte die Aufgabe mit einem Schaltflächen-Start verbinden. Wichtig ist die genaue Referenzierung. Verbinde den nachfolgenden Ansatz mit den von mir bisher gelieferten Code-Schnipseln:


Sub Sortieren()
   Dim wksTarget As Worksheet
   Dim rngSource As Range, rngTarget As Range
   Set rngSource = Workbooks("Mappe7") _
      .Worksheets(1).Range("A14").CurrentRegion
   Set rngSource = rngSource.Rows(rngSource.Rows.Count)
   Set wksTarget = Workbooks("Mappe8").Worksheets(1)
   Set rngTarget = _
      wksTarget.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
   rngSource.Copy rngTarget
   Set rngSource = Workbooks("Mappe7") _
      .Worksheets(1).Range("A14").CurrentRegion
   Set rngTarget = rngTarget.CurrentRegion
   rngSource.Sort key1:=rngSource.Cells(1, 1), _
      order1:=xlAscending, header:=xlNo
   rngTarget.Sort key1:=rngTarget.Cells(1, 1), _
      order1:=xlAscending, header:=xlNo
End Sub

Es gibt hier eine ganze Reihe von Eventualitäten, die berücksichtigt werden müssen.

hans

nach oben   nach unten

Re: Automatische Zeilen Sortierung
von: Jusuf
Geschrieben am: 08.05.2002 - 15:57:39

Antwort an Hans

Hallo Hans,
Ich habe genau das gemacht, was Du mir vorgeschlagen hast. Es funktioniert bestens.
Aus zwei Makros habe ich einen gemacht, mit einem Schalter verbunden und gestartet.
Datensätze werden in beide Mappen eingetragen und richtig sortiert! Prima.
So...
Jetzt habe ich etwas mehr Zeit für andere Dinge.
Noch mal vielen Dank.
Einen schönen Tag noch


 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Automatische Zeilen Sortierung"