JExcel und Makros

Hardi82

Mitglied
Hallo Leute. In einem Projekt habe ich die Aufgabe bekommen, Exceldateien mittels Java auszulesen. Dafür verwende ich zurzeit JExcel und komme soweit auch gut zurecht. Nun steh ich jedoch vor dem Problem, dass ich die Makros aus den Dateien auslesen muss. Ich möchte sie weder verändern oder neue erstellen. Mir geht es lediglich um den Code, der dahintersteckt, damit ich diesen beispielsweise als "Quellcode" in ein Textdokument hinterlegen kann. Leider finde ich dazu keinen Lösungsanfang und deshalb meine Frage: geht das überhaupt und wenn ja, wo muss ich da wie ansetzen? Danke schonmal für eure Mitüberlegungen.

LG, Hardi
 
hi Hardi,
Wenn ich mich recht entsinne ist es doch bei JExcel so, dass man eine Art Template verwendet. Oft reicht es doch an der Stelle, dass das Template übernommen wird mit seinen Formaten und Formeln.

Ich selbst habe vor längerer Zeit mit JExcel gearbeitet und dafür auch Formeln verwendet. Ich weiß nun nicht genau, ob Dir Formeln an dieser Stelle ausreichen. Dafür gibt es die Klasse jxl.write.Formula, die Du dann in Dein WritableSheet mit addCell einbrignen kannst.
 
Hi takidoso,

nur die Formeln der Zellen reichen mir eigentlich. Ich möchte zum Beispiel den Quellcode eines Makros auslesen, das sich hinter einem Formularbutton verbirgt. Quasi das ich dann soetwas erhalte wie:
Code:
Sub Lola()
  Dim rang As Range
  ....
  Do Until ...
  ...
End Sub
Mit der Klasse Formula erhält man nach deinen Aussagen aber nur die hinterlegten Formeln, oder?

LG
 
Hi Sebastian,

danke für den Tipp. Ich hatte es allerdings auch schonmal mit com4j versucht und scheiterte dann auch daran, dass ich nicht an die Makros kam. Außerdem benötigte die Anwendung ein vielfaches an Zeit mehr, da ständig mit dem Excel-Prozess kommuniziert wird. Dadurch bin ich auch zu JExcel übergeganen, weil dies um ein vielfaches schneller ist und einfacher zu beherrschen. Aber so wie es aussieht, scheine ich gar keine andere Wahl zu haben, als mich noch einmal mit einer com-Bridge zu beschäftigen, um die Makrofunktion zu implementieren :(. Aber danke für den Tipp. Werds mir mal anschauen. Vielleicht ist's ja auch einfacher als com4j.

LG
 
Zurück