Automatisch Excel Liste erstellen/erweitern

  • Hallo :)

    ich hätte da folgendes Anliegen falls mir jemand solch ein Script schreiben könnte :)

    Und zwar liegen in einem Ordner 269 Dateien in dem Format SSF (Programm-Format für eine Maschine), diese Dateien haben den Namen verschiedener Artikel zb 10105223 oder 1021566_A.Platine oder 10036876+58_gebogen etc usw...
    Jetzt bräuchte ich eine Excel Liste all dieser Namen, jedoch nur die Nummer welche am Anfang steht als ab dem + oder dem _ oder Buchstaben etc soll der Name nicht mehr in die Excel Liste eingefügt werden.
    Die Namen sollen dann in der Excel untereinander unter Artikelnummer stehen, also wie folgt:
    Artikelnummer
    10105223
    1021566
    10036876
    usw

    Die Excel Liste existiert noch nicht, möchte diese aber nun erstellen und bearbeiten.

    Viele Grüße

    Einmal editiert, zuletzt von Sascha123456 (27. April 2017 um 16:40)

  • Hallo @Sascha123456,

    Mir ist anhand deiner Beschreibung noch nicht klar, ob es Dubletten gibt, und wenn ja, ob es egal ist?
    Wenn du immer das gleiche Verzeichnis einlesen willst und die vorhandenen Dateien immer im Verzeichnis bleiben, werden sie jedes mal erneut in die Liste geschrieben.

    Grüße autoiter

  • Wenn dir eine einfache CSV-Tabelle reicht, dann kannst du das ganze so machen. Sollte deine Excel-Liste etwas hübscher aussehen kannst du ja auf die Excel-UDF zurückgreifen.

    Das gibt dir von einem Ordner "read" die Artikelnummern aus und ignoriert doppelte.
    Testdateien waren ("102156_A.Platine" "102156_A.Platine 2" "10036876+58" "10036876+58 222" und "10105223"). Test ist im Anhang.

  • Hallo @Sascha123456,

    Hier meine Bewerbung mit der Bitte um wohlwollende Prüfung. :D


    Hinweise:
    - Beim Einlesen werden doppelte Nummern entfernt. - Es wird aber nicht in der Excel-Datei geschaut, ob die Nummern durch alte Durchläufe bereits in die Datei geschrieben wurden. Das müsste man sonst noch einbauen.
    -Erstellst du selbst eine leere Excel Datei, in die du schreiben lassen willst, wird in Zeile 2 gestartet.

    Spoiler anzeigen

    @alpines Da warst du mal wieder schneller :D

    EDIT: @Sascha123456 Da ist mir doch glatt aufgefallen, dass das Skript so bei dir nicht funktionieren würde. Ich hatte zum Test au3-Dateien beim Auflisten der Dateien eingetragen. Daher konnten keine Ergebnisse mit .ssf-Dateien herauskommen. :rolleyes:
    Habs korrigiert.

    Grüße autoiter

    Einmal editiert, zuletzt von autoiter (27. April 2017 um 10:11)

  • Vielen Dank euch beiden :).

    @autoiter klappt wunderbar, kann man es noch so machen das wenn man das Script ein weiteres mal anwendet er nur noch die neuen Nummer einfügt und die alten die schon in der Excel existieren unberührt lässt und nicht nochmal rein schreibt?
    Wenn das zuviel Aufwand ist dann muss das aber nciht auch noch sein :)

  • Kein Problem @Sascha123456,

    ich habe da einfach eine Funktion von mir hinein kopiert. Ist etwas länger als notwendig, war jetzt aber für mich weniger Arbeit ;)
    Prüf mal, ob das nun passt.

    Spoiler anzeigen

    Grüße autoiter

  • Mit Skriptverzeichnis meinte ich das Verzeichnis, in dem auch das Skript liegt, dass du ausführst. Wenn du #include "Excel.au3" schreibst, dann wird die Datei im eigenen Verzeichnis gesucht.

    Mittlerweile habe ich mir das auch angesehen. Es gab ein paar Fehlerkorrekturen in der Excel.au3 seit dem letzten Release. Genau dort, wo der Fehler bei dir auftritt, ist nun noch eine Prüfung enthalten, die diesen Absturz verhindert.

    Wenn das funktioniert, kannst du die Datei auch gleich in deinen AutoIt3\Include Ordner (und evtl auch in AutoIt3\Beta\Include - falls du den hast) verschieben. (<-- Da musst du aber den Schreibschutz für den Ordner kurz mal aufheben, damit du die Datei überschreiben kannst. Danach wieder setzen).

    Grüße autoiter

  • Hmm, ich kann das bei mir nicht nachvollziehen..
    Ich habe den Part mal rausgeschmissen. Probiere es bitte mal mit diesem Skript.

    Spoiler anzeigen

    Grüße autoiter

  • Ja, sorry. Ich habe es eben selbst gemerkt - copy&paste Fehler.

    Spoiler anzeigen

    Grüße autoiter

    Einmal editiert, zuletzt von autoiter (27. April 2017 um 16:08)

  • Jetzt kommt beim 2ten Durchlauf wo er dann die neuen Artikelnummern einfügen soll wieder der Fehler mit Line133, wie vorhin.

    Hab ich viellicht einen Fehler gemacht? Hab oben die beiden Pfade eingegeben und fertig.

    Ok das muss mein Fehler sein, denn wenn ich den Pfad net angebe geht es

  • Mann, mann, mann. Ich habe das Skript in Beitrag 18 nochmal geändert. Da hatte ich diesmal wieder das drinnen gelassen, was ich vorher gelöscht hatte.

    Grüße autoiter