Seite 1 von 1

Makro für Zahlen!

Verfasst: Mo, 18.06.2012 08:42
von Frechesfrettchen
Hi ich will ein Makro für Zellen formatieren in dem Bereich "Zahlen" und dann Benutzerdefiniert!
Wenn ich es über aufnehmen mache kommt das dabei raus:

dim args72(0) as new com.sun.star.beans.PropertyValue
args72(0).Name = "NumberFormatValue"
args72(0).Value = 134

Wenn ich dann auf ausführen gehe passiert aber nicht wirklich was!
Die Format - Code soll lauten: 00U00000-00
Könnte mir bitte wer helfen?

Freundliche Grüße! :)

Re: Makro für Zahlen!

Verfasst: Mo, 18.06.2012 09:23
von theindless
Hallo,

ein Weg wäre vermutlich, dass du eine Formatvorlage mit dem von dir gewünschten Format erstellst und dies dann der Zelle oder dem Zellbereich zuweist.

http://www.dannenhoefer.de/faqstarbasic ... l#Zweig177

theindless

Re: Makro für Zahlen!

Verfasst: Mo, 18.06.2012 09:30
von Frechesfrettchen
Könntest du mir das ein wenig Erläutern wie die einzelnen schritte sind?

Re: Makro für Zahlen!

Verfasst: Mo, 18.06.2012 10:08
von theindless
Hallo,

Code: Alles auswählen

oDoc = thiscomponent
osheet=odoc.sheets(0)
mycell=osheet.getcellbyposition(0,0)
mycell.cellstyle="Überschrift1"
Also...

oDoc = thisComponent
-> greift auf aktuelles Dokument zu

oSheet = odoc.Sheets(0)
-> greift auf das 1. Tabellenblatt zu (=Index beginnt bei 0 zu zählen!)

myCell = oSheet.getCellByPosition(0,0)
-> greift auf die Zelle A1 zu (Index beginnt auch hier bei 0!)

mycell.cellstyle="Überschrift1"
-> weist dieser Zelle die Formatvorlage "Überschrift1" zu.

Formatvorlagen kannst du im Dokument unter Format - Formatvorlagen (oder F11) anlegen.

Ich hoffe das hilft dir etwas weiter.

theindless

P.S.: Ist vielleicht teilweise keine Fachsprache und die Termini nicht immer richtig.
Die "Profis" sind gerne zum Berichtigen eingeladen.

Re: Makro für Zahlen!

Verfasst: Mo, 18.06.2012 15:17
von Frechesfrettchen
Muss ehrlich sagen das ich nur Bahnhof verstehe! :(

Re: Makro für Zahlen!

Verfasst: Mo, 18.06.2012 15:27
von theindless
Hallo,

das kann ich dir nicht übel nehmen.

Nochmal einfacher versucht:

oDoc = thisComponent
-> du sagst dem Macro, dass du das derzeitige Dokument bearbeiten möchtest

oSheet = odoc.Sheets(0)
-> du sagst dem Macro, dass du das 1. Tabellenblatt (alle Tabellenblätter haben intern eine Nummer, ausgehend von 0 -> 0,1,2,...

myCell = oSheet.getCellByPosition(0,0)
-> du sagst dem Macro, dass du auf dem o.g. Blatt die Zelle mit der Koordinate (0,0) = A1 bearbeiten möchtest

mycell.cellstyle="Überschrift1"
-> du sagst dem Macro, dass dieser Zelle die Formatvorlage "Überschrift1" zugewiesen werden soll.

Wenn du dir die Code-Zeilen mal anschaust siehst du, dass immer das im vorherigen Code definierte Object in der nächsten weiter verwendet wird.

oDoc = ... -> oSheet = oDoc... -> myCell = oSheet... -> myCell.cellstyle

Formatvorlagen kann man in einem Dokument selber erstellen, was die Formatierung von Zellen enorm erleichtern kann.

Besser kann ich's leider nicht erklären...

In nachfolgendem Post sind prima Quellen angegeben, wo man sich die StarBasic-Programmierung aneignen kann.

http://oooforum.de/viewtopic.php?f=18&t=1553

theindless