Excel Makro auf OOo umschreiben (EXCEL-Tabellenumwandlung)

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

sk91
Beiträge: 4
Registriert: Sa, 20.12.2008 20:09

Excel Makro auf OOo umschreiben (EXCEL-Tabellenumwandlung)

Beitrag von sk91 »

Guten Tag,

Ich bin auf Open Office umgestiegen, nun habe ich ein Makro von MS das ich dringend benötige.
Könnte man das Umschreiben?
http://de.wikipedia.org/wiki/Wikipedia: ... umwandlung

Vielen Dank!!!

Gruß
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Excel Makro auf OOo umschreiben (EXCEL-Tabellenumwandlung)

Beitrag von balu »

Hallo,

kurze antwort:
Jein.

Ausführliche antwort:
Man könnte eventuell schon. Jedoch ohne genauere infos is nix mit umschreiben. Also beschreib was das Makro können soll. Die freundlichen Makro Spezialisten werden sich dann deiner annehmen. :D


Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.

wehr rächtschraipfähler findet khan si behalden :D
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Excel Makro auf OOo umschreiben (EXCEL-Tabellenumwandlung)

Beitrag von Stephan »

Könnte man das Umschreiben?
ja.
nun habe ich ein Makro von MS das ich dringend benötige.
dann könntest du ggf. auch einen Dienstleister damit beauftragen falls es so wichtig ist:
http://webtools.projects.ooodev.org/support/

Das Forum hier versteht sich als Hilfe zur SElbsthilfe. DEine Chance auf eine Antwort dürfte deshalb steigen wenn Du selbst beginnst das Makro auf StarBasic umzuschreiben und dann bei konkreten Detailproblemen fragst.

Sorry, nur wir machen das hier alle in unserer Freizeit und der von Dir verlinkte Quelltext hat ca. 800 Zeilen, Du kannst nicht erwarten das dir das jemand mal so nebenbei übersetzt, denn das erfordert einen erheblichen ZEitaufwand.



Gruß
Stephan
tof
*
Beiträge: 11
Registriert: Do, 13.09.2007 21:58

Re: Excel Makro auf OOo umschreiben (EXCEL-Tabellenumwandlung)

Beitrag von tof »

Hallo,

nur so als Idee:

Exceldatei in OO öffnen und dabei die im Screenshot zu sehenden Haken setzen.
Bildschirmfoto.png
Bildschirmfoto.png (53.54 KiB) 17691 mal betrachtet
Geht wenn dann aber nur wenn das Makro in Excel angelegt wurde.
mumpel
****
Beiträge: 133
Registriert: So, 22.08.2004 05:27
Wohnort: Lindau (B)
Kontaktdaten:

Re: Excel Makro auf OOo umschreiben (EXCEL-Tabellenumwandlung)

Beitrag von mumpel »

Hallo!

@tof

Und was bitte soll das bringen? Die Excelmakros laufen nicht unter OOo-Calc. OOo kennt zum Beispiel kein Cells. Da kannst Du noch so viel aktivieren, es wird nicht laufen.

Gruß, René

Windows 7 Home Premium (auf Acer Desktop PC)
Windows 8 Professional (auf Microsoft Surface Pro 3).
MSO 365 Home Premium
LibreOffice 4.2.
F-Secure Internet Security
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Excel Makro auf OOo umschreiben (EXCEL-Tabellenumwandlung)

Beitrag von Stephan »

Und was bitte soll das bringen? Die Excelmakros laufen nicht unter OOo-Calc. OOo kennt zum Beispiel kein Cells. Da kannst Du noch so viel aktivieren, es wird nicht laufen.
Da sind Deine Informationen schlicht veraltet. Calc ist seit Version 3.0 in der Lage Excel-VBA auszuführen.

Oder etwas länger:
Calc verfügt über diese Fähigkeit offiziell seit Version 3.0, es ging aber bei z.B. OxygenOffice auch schon früher und auch bei Calc geht es inoffiziell seit (wohl) Version 2.4, wobei die Einstellungen unter EXtras-OPtionen damals noch etwas anders aussahen.
Das Ganze funkltioniert derzeitig, bei Zugriffen auf das Objektmodell (also für die Mehrzahl typischer VBA-Makros) nur eingeschränkt, für reinen VBA-Basic-Code (also für Code der nur die Basaic-Befehle des VBA nutzt) zu nahezu 100%.
Letzteres ist zum Beispiel für benutzerdefinierte Funktionen, (also für Funktionen geschrieben in VBA, die dann im Tabellenblatt aufgerufen werden) von großer praktischer Bedeutung, da sich zum Einen sehr viel an (Rechen-)Funktionalität von VBA direkt nutzen lässt, als auch weil sich für praxisrelevante Fälle nun auch 'Weichen' schreiben lassen, was früher unmöglich war.


Gerade DEin Beispiel mit Cells ist ein völlig Unzutreffendes weil das eine der Stellen ist wo die Ausführung von VBA in Calc funktioniert. Um Dich davon zu überzeugen schreibe in ein Modul ein Calc-Datei folgenden Code:

Code: Alles auswählen

Option VBASupport 1

Sub VBA_Test()
Cells(1,1).Value = 123
End Sub

und führe den Code aus.

Genauso würde:

Code: Alles auswählen

Cells(1,1).Value = 123
auch funktionieren wenn es sich in einer *.xls Datei befände und du diese mit Calc öffnest, hierbei würde OOo beim Öffnen die Zeile:

Code: Alles auswählen

Option VBASupport 1
automatisch im Code ergänzen und diesen dann auch ausführen, sofern die Einstellungen unter Extras-Optionen so gesetzt sind wie es tof beschreibt.



Gruß
Stephan
mumpel
****
Beiträge: 133
Registriert: So, 22.08.2004 05:27
Wohnort: Lindau (B)
Kontaktdaten:

Re: Excel Makro auf OOo umschreiben (EXCEL-Tabellenumwandlung)

Beitrag von mumpel »

Hallo Stephan!

Danke für die Info. Das hört sich gut an. Da muss man nicht mehr allzuviel umlernen. Aber leider scheint nicht alles zu funktionieren. Zum Beispiel öffentliche Typen. Auch bei API scheint OOo noch etwas zu schwächeln. Ich habe aber Hoffnung, dass es irgendwann doch noch geht. Man lernt ja sein Leben lang. Mich würde zum Beispiel interessieren (hatt ich mal vor einiger Zeit hier gefragt), wie ich einen Verweis auf eine Bibliothek setzen kann. Das hier erwähnte funktioniert aber leider nicht mit den neuen Microsoft Open XML-Dateien (XSLM, DOCM usw.), da bei diesen der Code nicht geladen wird.

Gruß, René

Windows 7 Home Premium (auf Acer Desktop PC)
Windows 8 Professional (auf Microsoft Surface Pro 3).
MSO 365 Home Premium
LibreOffice 4.2.
F-Secure Internet Security
Karolus
********
Beiträge: 7532
Registriert: Mo, 02.01.2006 19:48

Re: Excel Makro auf OOo umschreiben (EXCEL-Tabellenumwandlun

Beitrag von Karolus »

Hallo
@Maxog
Dein Makro tut hier*** genau das was drinnen steht ( nach Anpassung des Pfads ) -
Zusatzfrage: Du weißt:
  • a)- was der Codeteil .....Left(Zelle, Len(Zelle) - 1).... bewirkt,
und möchtest
  • b) -genau das ?
Gruß Karo

hier***: LO 3.3.2 auf Suse 11.4 64bit
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Karolus
********
Beiträge: 7532
Registriert: Mo, 02.01.2006 19:48

Re: Excel Makro auf OOo umschreiben (EXCEL-Tabellenumwandlun

Beitrag von Karolus »

Hallo
Maxog hat geschrieben:Nein, ich weiss leider nicht was das bewirkt

Bin nicht so der Makro schreiber *g*
Bin eher der Googlesucher und zusammenbastlern :P

Bei mir meckert das Makro immer an

Code: Alles auswählen

 For Each Zelle in Selection 
rum
Und zu alledem bist du auch noch ziemlich knausrig mit notwendigen Informationen -
- Was genau meckert dann "das Makro" ?
- Was ist in der Selektion beim Makrostart ?
- Wenn du schon nicht weißt was "dein" Makro tut, könntest evtl. etwas ausführlicher berichten was du damit zu tun gedenkst!

Falls du das Makro aus Calc heraus startest und es sind zu dem Zeitpunkt eine oder mehrere Zellen in der Selektion, gib noch die verwendete OOo/LO -version nebst deinem Betriebssystem an.

achso: Das Makro schreibt von der/den ausgewählten Zelle/n jeweils den Inhalt ohne das letzte Zeichen zeilenweise in die angegebene Textdatei.

Gruß Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Karolus
********
Beiträge: 7532
Registriert: Mo, 02.01.2006 19:48

Re: Excel Makro auf OOo umschreiben (EXCEL-Tabellenumwandlun

Beitrag von Karolus »

Hallo
Ok, ich hab hier mal getestet
  • Laptop: OOo 3.2 Linux → gleicher Fehler wie bei dir
    Arbeitsrechner: Linux OOo 3.3 → gleicher Fehler wie bei dir
    Arbeitsrechner: Linux Libreoffice 3.3 → funktioniert
    Arbeitsrechner: Win XP OOo 3.1 → funktioniert
Edit: Nein, alles Unsinn - der Code läuft nur dann fehlerfrei wenn er in einem Modul des Calc-dokuments gespeichert wird.


Gruß Karo
Zuletzt geändert von Karolus am Do, 21.04.2011 09:07, insgesamt 1-mal geändert.
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Karolus
********
Beiträge: 7532
Registriert: Mo, 02.01.2006 19:48

Re: Excel Makro auf OOo umschreiben (EXCEL-Tabellenumwandlun

Beitrag von Karolus »

Hallo
Siehe Edit letzte Antwort.
dann noch das -1 entfert, und nun funktioniert alles wie es soll :)
Dann ersetze Left(Zelle, Len(Zelle) ) einfach durch Zelle
Gruß Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Antworten