Andre: Excel: mit Farben "ausgefüllte" Felder mit Wert belegen

Hallo,

ich habe eine vermutlich merkwürdige Aufgabe zu lösen: Ich habe eine Exceldatei deren Felder mit unterschiedlichen Farben ausgefüllt sind. Also keine bedingte Formatierung oder ähnliches, sondern einfach nur ne Farbe.
Ist es möglich, durch irgendeinen Trick zu sagen: Wenn Farbe = grün, setze Wert = 5; Wenn Farbe = gelb, setze Wert = 3;

Der zweite Schritt wäre (falls das überhaupt möglich ist), das in PHP zu realisieren.
Hat jemand eine Idee?

Danke und viele Grüße

  1. Mahlzeit Andre,

    Ist es möglich, durch irgendeinen Trick zu sagen: Wenn Farbe = grün, setze Wert = 5; Wenn Farbe = gelb, setze Wert = 3;

    Einfacher wäre es natürlich anders herum. Aber mit einem entsprechenden Makro ist es durchaus möglich, Hintergrundfarben von Zellen auszulesen und dann natürlich auch deren Inhalte zu setzen.

    Der zweite Schritt wäre (falls das überhaupt möglich ist), das in PHP zu realisieren.

    Ähm ... wie bitte? Was genau willst Du "in PHP realisieren"? Das Auslesen von Hintergrundfarben von Zellen einer Excel-Datei? Oder das Setzen von Zelleninhalten einer Excel-Datei?

    Oder findest Du es einfach lustig, Deine Leser im Nebel stochern zu sehen, während in Deinem Kopf schon haufenweise Ideen und Gedanken vor sich hin mutieren, die Du aber lieber für Dich behältst?

    Hat jemand eine Idee?

    Ja. Aber bevor Du Dir nicht (erneut) die Tipps für Fragende zu Gemüte führst und sie berücksichtigst, behalte ich diese mal für mich ... Du machst das ja auch nicht anders.

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
    1. ok sorry, hier etwas ausführlicher:

      Ich bekomme eine tägliche Warenbestandsliste vom Lieferanten. Diese liegt auf einem Server zum freien Download.
      Diese Excel-Liste behinhaltet alle Artikel mit dem jeweiligen Lagerbestand, wobei die Lagerbestände nicht nach Zahlen, sondern wie geschrieben mit Farben markiert sind. Hier bedeutet also "Grün" mehr als 5 Artikel auf Lager.
      Nun würde ich gerne den Warenimport automatisieren, d.h. ein PHP Script, dass sowohl die Datei vom Server abholt, die hinterlegte Farbe erkennt und damit einen Wert verknüpft (grün = 5, gelb = 2,...) und diese Werte dann in eine bestimmte Datenbanktabelle speichert.

      Soweit klarer?

      Grüße
      André

      1. Mahlzeit Andre,

        Ich bekomme eine tägliche Warenbestandsliste vom Lieferanten. Diese liegt auf einem Server zum freien Download.

        Also *bekommst* Du diese oder *holst* sie Dir?

        Diese Excel-Liste behinhaltet alle Artikel mit dem jeweiligen Lagerbestand, wobei die Lagerbestände nicht nach Zahlen, sondern wie geschrieben mit Farben markiert sind. Hier bedeutet also "Grün" mehr als 5 Artikel auf Lager.

        Diese Formatierung ist für menschliche Nutzer zwar hilfreich und intuitiv, für den (automatisierten) Datenaustausch zwischen System aber nur bedingt bis gar nicht zu gebrauchen. Erkundige Dich bei Deinem Lieferanten, ob er seine Bestandslisten auch in einem technisch saubereren, weniger proprietären und besser zu verarbeitenden Format (z.B. CSV- oder XML-Datei) zur Verfügung stellen kann.

        Nun würde ich gerne den Warenimport automatisieren, d.h. ein PHP Script, dass sowohl die Datei vom Server abholt, die hinterlegte Farbe erkennt und damit einen Wert verknüpft (grün = 5, gelb = 2,...) und diese Werte dann in eine bestimmte Datenbanktabelle speichert.

        Prinzipiell ist das natürlich möglich. Ob Du die entsprechenden Routinen selbst schreiben oder eventuell vorhandene Module/Bibliotheken nutzen willst, bleibt Dir überlassen. Bedenke, dass Excel-Dateien unterschiedliche Dateiformate und -versionen haben können! Ich würde so etwas nur im äußersten Notfall (wenn der Lieferant stur oder unfähig ist, s.o.) bauen wollen ...

        Soweit klarer?

        Ja. :-)

        MfG,
        EKKi

        --
        sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
        1. Mahlzeit Andre,

          Also *bekommst* Du diese oder *holst* sie Dir?

          Ich "bekomme" sie bereit gestellt aber "hole" sie mir ab :)

          Diese Formatierung ist für menschliche Nutzer zwar hilfreich und intuitiv, für den (automatisierten) Datenaustausch zwischen System aber nur bedingt bis gar nicht zu gebrauchen. Erkundige Dich bei Deinem Lieferanten, ob er seine Bestandslisten auch in einem technisch saubereren, weniger proprietären und besser zu verarbeitenden Format (z.B. CSV- oder XML-Datei) zur Verfügung stellen kann.

          Geht leider nicht, sind mehrere listen tagesaktuell, der lieferant ändert daran nichts...

          Prinzipiell ist das natürlich möglich. Ob Du die entsprechenden Routinen selbst schreiben oder eventuell vorhandene Module/Bibliotheken nutzen willst, bleibt Dir überlassen. Bedenke, dass Excel-Dateien unterschiedliche Dateiformate und -versionen haben können! Ich würde so etwas nur im äußersten Notfall (wenn der Lieferant stur oder unfähig ist, s.o.) bauen wollen ...

          Ok, dann muss ich mich mal einlesen, danke

          1. @@Andre:

            nuqneH

            der lieferant ändert daran nichts...

            Oh je, mal wieder ein Musterbeispiel dafür, wie dumm es ist, Daten und Darstellung nicht voneinander zu trennen.

            Qapla'

            --
            Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
            (Mark Twain)
      2. Hallo,

        Nun würde ich gerne den Warenimport automatisieren, d.h. ein PHP Script, dass sowohl die Datei vom Server abholt, die hinterlegte Farbe erkennt und damit einen Wert verknüpft (grün = 5, gelb = 2,...) und diese Werte dann in eine bestimmte Datenbanktabelle speichert.

        da Du Dich eh' mit der Office-Automation herumschlagen musst, würde ich diese Anwendung gleich in VB.NET schreiben.

        Freundliche Grüße

        Vinzenz