Autor Thema: Excel-Sortierung nach Datum  (Gelesen 3080 mal)

Offline geissbock

  • Aktives Mitglied
  • ***
  • Beiträge: 131
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Excel-Sortierung nach Datum
« am: 28.08.07 - 10:48:23 »
Hallo,
ich hab ein Problem mit der Sortierung einer Excel-Tabelle, die ich per Script erzeuge. Die erzeugte Datei soll aufsteigend nach dem Datum in der 2. Spalte sortiert werden. Dazu habe ich die Konstante Const xlSortTextAsNumbers = 1 gesetzt und versuche dann die Sortierung mit diesem Befehl:
ExcelApp.Selection.Sort  oSheet.Columns("B"), xlAscending , "",,,,, xlGuess,1, False, xlTopToBottom, xlSortTextAsNumbers
Die weiteren Konstanten, die hier zum Einsatz kommen sind natürlich auch gesetzt. Die Datei wird nun auch nach der Spalte sortiert, aber leider rein numerisch und ohne Beachtung der Monate, also etwa so:
01.04.2007
01.05.2007
02.02.2007
02.02.2007
03.05.2007
04.03.2007
Was mache ich falsch?
Vielen Dank
Klaus

Offline DerAndre

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.655
  • Geschlecht: Männlich
  • Keep cool!
Re: Excel-Sortierung nach Datum
« Antwort #1 am: 28.08.07 - 11:00:11 »
Da war irgendwas.

Ich glaube, Esel schaut nur bis zum Punkt und ignoriert den Rest. Ergo stimmt die Sortierung.

Du musst die Felder Werte ( gibt es da CDate? ) als Datum Festlegen, dann hast Du intern Zahlen und dann klappt es auch mit der Sortierung


« Letzte Änderung: 28.08.07 - 11:03:42 von DerAndre »
André

Elterninitiative diabetischer Kinder und Jugendlicher e.V.
-----------------------------------------------------------------------------
Fliegen ist die Kunst auf den Boden zu Fallen, aber daneben.
-----------------------------------------------------------------------------
Etwas mehr Hardware dazu zu kaufen ist viel billiger als
Software besser zu machen. ( Niklaus Wirth )

Offline geissbock

  • Aktives Mitglied
  • ***
  • Beiträge: 131
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Excel-Sortierung nach Datum
« Antwort #2 am: 28.08.07 - 11:28:37 »
Hmmh,
wenn ich Datei aber in Excel selbst weiterbearbeite und nach der Spalte sortiere, kommt eine Sortierwarnung, dass die Spalte Zahlen enthält die als Text formatiert sind und fragt was man tun möchte. Bei Ankreuzen von "Alles was wie eine Zahl aussieht, als Zahl sortieren" sortiert er dann aber korrekt. Ich habe mir das dann mit einem Makro aufgezeichnet und gedacht die Einstellung xlSortTextAsNumbers ist dafür verantwortlich. Reicht aber scheinbar nicht.
Ausserdem habe ich diese Funktion eingebaut, mit der ich dachte das Format in Excel korrekt zu setzen, aber das funzt scheinbar auch nicht korrekt.
    'Zellformat umsetzen bei Datumswert
   If Left$(strCell,1)="B" Or  Left$(strCell,1)="C"Then
      ExcelApp.ActiveCell.NumberFormatLocal = "TT.MM.JJJJ"
   End If

Offline DerAndre

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.655
  • Geschlecht: Männlich
  • Keep cool!
Re: Excel-Sortierung nach Datum
« Antwort #3 am: 28.08.07 - 11:30:25 »
Es gibt eine goldene Regel in Esel

Was interaktiv klappt muß programmatisch nicht unbedingt klappen.

Schau hier:

http://www.herber.de/forum/archiv/420to424/t422610.htm
André

Elterninitiative diabetischer Kinder und Jugendlicher e.V.
-----------------------------------------------------------------------------
Fliegen ist die Kunst auf den Boden zu Fallen, aber daneben.
-----------------------------------------------------------------------------
Etwas mehr Hardware dazu zu kaufen ist viel billiger als
Software besser zu machen. ( Niklaus Wirth )

Offline geissbock

  • Aktives Mitglied
  • ***
  • Beiträge: 131
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Excel-Sortierung nach Datum
« Antwort #4 am: 28.08.07 - 15:31:00 »
Hmmh,
ok, danke für den Link. Ist ja übel, bekommt man denn den VBA-Code dort irgendwie ins Script rein oder heißt das ich muss an der Stelle aufgeben? Bin ich momentan etwas ratlos.
Danke & Gruß
Klaus

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz