Seite 1 von 1

Makroprogrammierung; Wiki; Excel

Verfasst: Dienstag 22. August 2006, 10:00
von wiing77
Hallo.

Ich bin mir nicht ganz sicher, ob diese Frage hier richtig ist, aber der Versuch kostet ja nichts. :D
Meine Frage bechäftigt sich mit der Makroprogrammierung für Wiki mit Python. Es soll versucht werden in den Wiki eine Art grafischer Oberfläche mit Hilfe eines Makros einzubauen. Diese grafische Oberfläche soll dazu dienen eine Auswertung von Anfragen mit Hilfe von Excel durchzuführen.
Soviel zum Hintergrund, nun meine Fragen.

1. Ist es grundsätzlich möglich mit Python auf Excel zuzugreifen?
2. Wohin kann ich mich wenden, um konkrete Hilfe zu bekommen?
3. Habt ihr Literaturempfehlungen für die Programmierung mit Python?

Danke für eure Bemühungen

Verfasst: Dienstag 22. August 2006, 10:29
von jAN
zu 1.) ja gibt es... http://www.python.net/crew/mhammond/win32/
sonst: einfach mal googlen :) oder im forum über die suche nach excel suchen...

Verfasst: Dienstag 22. August 2006, 10:39
von wiing77
Hallo jAN.

Danke für die schnelle Antwort. Hilft mir auf jeden Fall weiter.
Googlen und Forum Suche habe ich auch schon versucht, leider mit eher mäßigem Erfolg.

MfG Björn

Verfasst: Dienstag 22. August 2006, 10:42
von jens
Brauchst du überhaupt Excel? Kannst du nicht die Daten in eine DB schmeißen???

Verfasst: Dienstag 22. August 2006, 10:59
von wiing77
Hallo.

Also gefordert ist eine Auswertung in Excel. Sicher wäre es auch möglich über den Weg einer DB zu gehen, aber ich wollte eigentlich so wenig Verarbeitungsschritte wie möglich machen.
Oder denkst du das die Möglichkeit einer DB nutzung mit Python einfacher ist. Bin noch neu in dieser Programmiersprache.

MfG Björn

Verfasst: Dienstag 22. August 2006, 11:11
von gerold
wiing77 hat geschrieben:Also gefordert ist eine Auswertung in Excel. Sicher wäre es auch möglich über den Weg einer DB zu gehen, aber ich wollte eigentlich so wenig Verarbeitungsschritte wie möglich machen. Oder denkst du das die Möglichkeit einer DB nutzung mit Python einfacher ist. Bin noch neu in dieser Programmiersprache.
Hallo Björn!

Man kann von Python aus, über das Paket "pywin32" auf Excel zugreifen. Man kann aber auch über ODBC auf Excel zugreifen.
Dann gibt es auch noch ein Python-Modul, mit dem man Excel-Dateien schreiben kann, welches kein Excel und kein pywin32 dafür braucht. Den Namen weiß ich jetzt allerdings nicht mehr.

Es ist also kein Problem lesend und auch schreibend auf die einzelnen Zellen zuzugreifen. Allerdings ist es nichr wirklich möglich, von Python aus im Excel irgendwelche Pivot-Tabellen oder Diagramme zu erstellen. Dafür wäre einfach der Aufwand zu groß.

Was willst du also tun? Willst du Daten aus Excel auslesen? Willst du Daten in eine Excel-Datei schreiben? Willst du dafür eine neue Excel-Datei erstellen? Ist das Format der Daten vorgegeben, oder ist es egal? ...

Beschreibe den Ist-Zustand und den Soll-Zustand, dann können wir dir exakt dabei helfen.

mfg
Gerold
:-)

Verfasst: Dienstag 22. August 2006, 11:21
von CM
gerold hat geschrieben:Dann gibt es auch noch ein Python-Modul, mit dem man Excel-Dateien schreiben kann, welches kein Excel und kein pywin32 dafür braucht. Den Namen weiß ich jetzt allerdings nicht mehr.
Hoi,

das get mit pyExcelerator oder (veraltet) pyXLWriter. Aber diese Module können nicht (bzw. kaum) auf EXCEL Dateien zugreifen.
M. a. W. wohl eine Sackgasse in diesem Fall. Soweit mein Beitrag hier ...

Gruß,
Christian

Verfasst: Dienstag 22. August 2006, 11:54
von wiing77
Hallo Gerold.

Danke für die ausführliche Antwort.
Ich möchte nur Daten in Excel schreiben. Die dafür notwendige Excel-Datei besteht bereits, hier erfolgt auch die grafisch Auswertung - somit völlig unabhängig von der Python Programmierung.

Vorgestellt hatte ich mir die Dateneingabe wie folgt:

Im neuen Wiki-Beitrag sollen Steuerelelemente vorhanden sein. Sicher wäre hier etwas zum Anklicken am besten (z.B. Häkchen setzten). Es gilt dann diese Information in Excel zu schreiben ("Welches Häkchen wurde angeklickt?") und dort die Summe aller Häkchen zu zählen (das Zählen sollte evtl. schon vorher passieren).

Ich hoffe das reicht als Überblick. Das Konzept ist noch nicht ausgereift, was sicher auch daran liegt, das ich darüber nicht alleine entscheide:-)

MfG Björn