Excelsplate aus Notes sortieren

  • Hallo,


    ich habe da einen Excelexport gebastelt.
    Leider liefert mir folgende Funktion im Notes die Dokumente nicht der Reihe nach


    For I=1 To Db.UnprocessedDocuments.Count
    Set Doc=Db.UnprocessedDocuments.GetNthDocument(I)
    ...
    Jetzt meine Frage, wie baue ich folgenden Macrobefehl von Excel in NotesScript um, mit mir die Daten wenigstens im Excel sortiert werden, wenn schon Notes mir die Dokumente nicht sortiert liefert.


    Macrobefehl:
    Selection.Sort Key1:=Range("A4"), Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom


    Wäre echt super wenn mir da einer die Lösung hätte.
    Gruss Melli

    • Offizieller Beitrag

    im Notes ist die Zeile kürzer.


    Selection.Sort Key1:=Range("A4"), Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom


    'xlApp ... ist das Excel-Object
    xlapp.Selection.Sort xlapp.Range("A4"), 1, 0, 1, False, 1


    Wie komme ich darauf:
    im Excel rechte Maustaste auf z.B. xlAscending, dann Quickinfo und dort steht 1 => Order1:=xlAscending ersetzen durch 1.


    Nur bei Range ist es anders. Range ist keine Konstante, also nehme ich dieses vom Objekt xlApp.


    Habs nicht getestet, aber die Konstanten stimmen.


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • Hallo,


    erstmal danke dass du mir helfen möchtest, aber leider funktioniert der Befehl nicht. Wenn ich ihn einbaue kommt folgender Fehler


    Microsoft Excel: Verweis ist ungültig


    Hast du vielleicht noch eine Idee?

    • Offizieller Beitrag

    schau mal in der Excel-Hilfe, ob die Reihenfolge der Parameter stimmt.


    Da im Notes nicht mit "Order1:=xlAscending" gearbeitet werden kann muss die Reihenfolge stimmen.
    Ich hatte es schon, dass die Reihenfolge der Parameter in aufgezeichneten Excel-Makros nicht mit der in der Hilfe übereinstimmte.


    Bin mir jetzt nicht sicher, aber ich glaube bei Range ist noch ein Fehler es muss wahrscheinlich lauten:
    xlapp.Selection.Sort xlapp.Selection.Range("A4"), 1, 0, 1, False, 1
    Aber wo Range steckt steht in der Excel-Hilfe.


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • Ich habe gerade alle Attribute weggelassen und dann ging es. Habe nur

    xlapp.Selection.Sort xlapp.Range("A4")


    benützt und da reicht ja, die anderen Angaben brauche ich ja nicht .


    Vielen Vielen dank

  • Hallo,


    wenn ich folgenden Befehl ausführe (xlapp.Selection.Sort xlapp.Range("A4")) , dann sortiert Excel NUR nach der ersten Spalte. Wie heißt der Befehl wenn ist als erstes nach der ersten und dann nach der zweiten Spalte sortieren lassen möchte?


    Wenn ich in Excel eine Macroaufzeichnung mache, dann sieht das folgendermaßen aus:
    Selection.Sort Key1:=Range("A4"), Order1:=xlAscending, Key2:=Range("B4") , Order2:=xlAscending, Header:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom


    Wie schaffe ich es Key1 und Key2 mitzugeben? Hab schon ein paar Varianten ausprobiert, aber leider nur mit Fehlermeldungen.
    Wäre echt super wenn mir jemand helfen könnte.

  • Wie du es in Excel auch machst, nur dass du eben alle Parameter angibst, d.h. um dein Excel Beispiel zu nehmen:


    xlapp.Selection.Sort xlapp.Range("A4", xlAscending, "B4" , xlAscending, "", xlAscending, xlNo,1, False,xlTopToBottom)

  • Wenn ich folgenden Befehl eingeben
    xlapp.Selection.Sort xlapp.Range("A4",1,"B4",1,2,1,False,1)


    kommt folgende Fehlermeldung im Notes
    "Wrong number of arguments for automation obejct"


    Was mache ich falsch?

  • Stimmt, Sorry, hab echt die dritte Sortierspalte vergessen,
    ABER leider geht es immer noch nicht. Kommt leider immer noch der gleiche Fehler. Und nun????



    Excel.Selection.Sort Excel.Range("A4", 1, "B4" , 1, "", 1, 2, 1, False, 1)