Hallo,
ich möchte per Makro Informationen aus einem Tabellendokument auslesen und in ein Textdokument einfügen. Das Auslesen und Einfügen der Daten funktioniert soweit, nur möchte ich die Daten auch an bestimmten Stellen stehen haben. Ich weis nicht ob es eine gute Lösung ist, aber momentan versuche ich das über Textfelder umzusetzen. Das Problem hierbei ist, dass ich es trotz aller Bemühungen nicht schaffe ein Textfeld anzusprechen. Selbst wenn ich mir die Quelltexte von hier: http://www.ooowiki.de/WriterApi#Textfelder_ansprechen
einfach ins Makro kopiere und mein Textfeld dann "Feldname" nenne funktioniert es nicht. Es erscheint keine Fehlermeldung. Mit einer If-Abfrage per hasByName findet er das Textfeld nicht. Ich bin ein wenig ratlos :-/ Bestimmt mache ich irgendetwas ganz Offensichtliches falsch und übersehe es mal wieder. Vielleicht könnt ihr mir helfen.
Viele Grüße,
Sophokles
[Gelöst]Textfelder?
Moderator: Moderatoren
[Gelöst]Textfelder?
Zuletzt geändert von Sophokles am Mi, 14.04.2010 10:27, insgesamt 1-mal geändert.
Re: Textfelder?
Hallo Sophokles,
wenn Du hier Deinen schon vorhandenen Code posten würdest könnten wir vielleicht sehen was da nicht in Ordnung ist.
Wenn ich Deine Ausführung aber richtig deute dann verwendest Du besimmt Textfelder (Formularfelder)
Ausserdem gibt es im Forum Beipiele wie man Textmarken (Bookmarks) ansprechen und dort Text einfügen kann.
Textmarken in Tabellen müssen besonders angesprochen werden.
Schau Dir obigen Links mal an und stelle dann weitere Fragen wenn Du nicht weiterkommst.
Die Suchfunktion des Forums wird Dir bestimmt noch mehr hilfreiche Informationen präsentieren.
Viel Erfolg.
Jürgen
wenn Du hier Deinen schon vorhandenen Code posten würdest könnten wir vielleicht sehen was da nicht in Ordnung ist.
Obiger Code betrifft Feldbefehle im Dokument.' Textfelder ansprechen
Textfelder = Textdokument.TextFieldMasters
Wenn ich Deine Ausführung aber richtig deute dann verwendest Du besimmt Textfelder (Formularfelder)
Ausserdem gibt es im Forum Beipiele wie man Textmarken (Bookmarks) ansprechen und dort Text einfügen kann.
Textmarken in Tabellen müssen besonders angesprochen werden.
Schau Dir obigen Links mal an und stelle dann weitere Fragen wenn Du nicht weiterkommst.
Die Suchfunktion des Forums wird Dir bestimmt noch mehr hilfreiche Informationen präsentieren.
Viel Erfolg.
Jürgen
Software hat keinen Verstand - benutze deinen eigenen...!
Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
Re: Textfelder?
Jeah
Danke für die schnelle Antwort, schön dass es solche Foren gibt. Genau das wars, ich hab irgendwie überlesen dass es da um Feldbefehle ging. Gleich dein erster Link hat die Lösung gebracht. Funktionieren tuts, ich verstehe nur noch nicht wirklich warum man das Textfeld nach noch "in den Controller tun" muss bevor man einen Text zuweisen kann.
Viele Grüße,
Sophokles

Code: Alles auswählen
CtrlLabelField = oForm.getByName("test")
Viele Grüße,
Sophokles
Re: Textfelder?
Es geht auch ohne:Sophokles hat geschrieben:ich verstehe nur noch nicht wirklich warum man das Textfeld nach
Code: Alles auswählen
CtrlLabelField = oForm.getByName("test")
noch "in den Controller tun" muss bevor man einen Text zuweisen kann.

Code: Alles auswählen
Sub TextUebertragen
Dim oDoc , oForm , CtrlTextBox as Object
Dim myString as String
oDoc = thisComponent
MyString = "Testtext"
oform=odoc.drawpage.forms.getbyindex(0)
CtrlTextBox = oForm.getByName("TextBox")
CtrlTextBox.text = MyString
End Sub
Software hat keinen Verstand - benutze deinen eigenen...!
Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem