Excel (2003) auslesen und Daten in SQLite speichern

  • Hallo zusammen,

    ich spiele schon etwas länger mit AutoIT rum und hole lese hier auh öfters mal hier im Forum (was ich echt klasse finde, mal so nebenbei gesagt), allerdings fast nur für Installationsscripte..jetzt wollte ich mal was neues probieren. Ich beschreibe mal kurz die Ausgangssituation:

    Ich arbeite bei einer Spedition. Dort bekommen wir täglich mehrere Excel Dateien per Mail zugesandt in der Sendungsdaten stehen die für Statistikzwecke aber hauptsächlich zur Rechnungserstellung dienen. Bis jetzt wurde mehr oder weniger manuell die Rechnung erstellt und ausgedruckt (auf Tagesbasis), jetzt wünscht der Kunde eine elektronische Rechnung in der alle Sendungsdaten einzeln aufgeführt sind. Allerdings bei der Menge an Exceldateien bzw. Datensätze in den Exceldateien ist man ca. 2-3 Stunden damit beschäftigt die Daten zu übertragen und zu berechnen.

    Da habe ich mir überlegt das man das doch bestimmt mit AutoIT lösen könnte. Ich stelle mir das ungefähr so vor, das man per Fileopendialog die Excel Datei öffnet und alle Datensätze Zeile für Zeile auslesen lässt und in SQLite speichert. Den Umweg über eine CSV möchte ich mir eigentlich sparen

    eine Exceldatei sieht ungefähr aus wie im Anhang nur mit mehr Zeilen und Spalten.

    Ich habe auch schon die SuFu benutzt und nichts gefunden bzw. teilweise auch nicht verstanden (Beispiel ExcelUDF)

    Wäre euch sehr dankbar wenn ihr mir einen Tip geben könntet wie ich das lösen kann. BZW wie ich am Besten anfange

  • Da mir ja anscheinend niemand helfen kann, versuche ich mich gerade daran die geschichte mit CSV zu lösen..

    lese mit _FileReadToArray die CSV aus, und spitte das ganze mit StringSplit.. Das funktioniert soweit so gut bei einem Datensatz..(ein Datensatz in Excel besteht aus 21 Spalten). Kommt jetzt allerdings ein Datensatz hinzu (also in Excel die nächste Zeile mit 21 Spalten) komme ich nicht an die Daten.



    der neue Datensatz soll beginnen wenn $x = 22 ist.. allerdings wird ja hier bis zum Ende gezählt also $x = 22 wird nicht als neuer Datensatz erkannt.

    kann mir vielleicht da jemand helfen oder sehe ich einfach den Wald vor lauter Bäumen nicht??