Absoluter Neuling braucht etwas Hilfe :-)
Moderator: Moderatoren
Absoluter Neuling braucht etwas Hilfe :-)
Halli Hallo,
und vielen Dank vorab, dass Ihr meinen Post anschaut.
Ich möchte ein Textdokument mit Feldern versehen, die abgerufen werden, wenn man das Dokument aufruft.
Soweit bin ich schon recht weit gekommen, nur ruft mein Makro den Namen, aber auch die Bezeichnung der Felder nicht ab.
Mir wird also immer nur Textfeld 1, Textfeld2 etc. angezeigt.
Ich bin leider trotz einiger Stunden mit Versuchen keinen Schritt weiter gekommen, habe aber eben auch echt keine Ahnung
Kann mir jemand sagen, wo der Fehler in dem Skript unten liegt?
Was ich auch gerne noch wüsste, wie ich dem Makro einen "Stempel" geben kann, um es auch bei hoher Sicherheitseinstellung ausführen zu können
Danke euch!
OkidokiB
Sub AutoOpen()
Dim doc As Object
Dim form As Object
Dim field As Object
Dim sName As String
Dim sValue As String
Dim oCursor As Object
doc = ThisComponent
form = doc.DrawPage.Forms(0)
oCursor = doc.CurrentController.getViewCursor()
For Each field In form
If field.SupportsService("com.sun.star.form.component.TextField") Then
sName = field.Model.Name
sValue = InputBox("Bitte geben Sie den Wert für das Feld '" & sName & "' ein:")
If sValue <> "" Then
field.Text = sValue
End If
End If
Next
doc.CurrentController.getViewCursor().gotoStartOfDoc(True)
End Sub
und vielen Dank vorab, dass Ihr meinen Post anschaut.
Ich möchte ein Textdokument mit Feldern versehen, die abgerufen werden, wenn man das Dokument aufruft.
Soweit bin ich schon recht weit gekommen, nur ruft mein Makro den Namen, aber auch die Bezeichnung der Felder nicht ab.
Mir wird also immer nur Textfeld 1, Textfeld2 etc. angezeigt.
Ich bin leider trotz einiger Stunden mit Versuchen keinen Schritt weiter gekommen, habe aber eben auch echt keine Ahnung
Kann mir jemand sagen, wo der Fehler in dem Skript unten liegt?
Was ich auch gerne noch wüsste, wie ich dem Makro einen "Stempel" geben kann, um es auch bei hoher Sicherheitseinstellung ausführen zu können
Danke euch!
OkidokiB
Sub AutoOpen()
Dim doc As Object
Dim form As Object
Dim field As Object
Dim sName As String
Dim sValue As String
Dim oCursor As Object
doc = ThisComponent
form = doc.DrawPage.Forms(0)
oCursor = doc.CurrentController.getViewCursor()
For Each field In form
If field.SupportsService("com.sun.star.form.component.TextField") Then
sName = field.Model.Name
sValue = InputBox("Bitte geben Sie den Wert für das Feld '" & sName & "' ein:")
If sValue <> "" Then
field.Text = sValue
End If
End If
Next
doc.CurrentController.getViewCursor().gotoStartOfDoc(True)
End Sub
Re: Absoluter Neuling braucht etwas Hilfe :-)
Hallo,
ich musste zwei Zeilen abändern, um das Makro zum Laufen zu bringen:
aus:
machte ich
und aus
machte ich
dann machte es was es soll.
edit: (gerade gelesen viewtopic.php?p=299794#p299794) Bei den Einstellungen der Makrosicherheit, gibt es auch noch "Vertrauenswürdige Quellen" ...
ich musste zwei Zeilen abändern, um das Makro zum Laufen zu bringen:
aus:
Code: Alles auswählen
sName = field.Model.Name
Code: Alles auswählen
sName = field.Name
Code: Alles auswählen
doc.CurrentController.getViewCursor().gotoStartOfDoc(True)
Code: Alles auswählen
doc.CurrentController.getViewCursor().gotoStart(True)
Das verstehe ich nicht wirklich ... (Heißen deine Textfelder so?)Mir wird also immer nur Textfeld 1, Textfeld2 etc. angezeigt.
Da bin ich überfragt wüsste es aber auch gern )Was ich auch gerne noch wüsste, wie ich dem Makro einen "Stempel" geben kann, um es auch bei hoher Sicherheitseinstellung ausführen zu können?
edit: (gerade gelesen viewtopic.php?p=299794#p299794) Bei den Einstellungen der Makrosicherheit, gibt es auch noch "Vertrauenswürdige Quellen" ...
- Dateianhänge
-
- makro_felder_füllen.odt
- (11.43 KiB) 96-mal heruntergeladen
Gruß,
mikeleb
mikeleb
Re: Absoluter Neuling braucht etwas Hilfe :-)
Hallo,
erst mal vielen Dank, jetzt läuft es bei mir auch!
Zu dem Punkt Textfeld 1 usw.
Ich wollte mit dem Makro erreichen, dass das jeweilige Textfeld mit Namen abgefragt wird.
Jetzt öffnet sich das Abfragefeld mit "Bitte geben Sie den Wert für das Feld `Textfeld 1`ein:"
und ich hatte gerne, dass es den Namen des Feldes, also z.B. "Vorname" in diese Abfrage integriert,
sprich sie aus dem jeweiligen Feld ausliest. Vergeben habe ich Name und auch Bezeichnung des Feldes,
aber es funzt nicht
Das Dokument, welches mit den Textfeldern versehen wird, ist recht lang und hat viele Variablen und wenn ich
dann immer schauen muss, welches Textfeld welche Nummer hat ...
Vielen Dank im Voraus!
OkidokiB
erst mal vielen Dank, jetzt läuft es bei mir auch!
Zu dem Punkt Textfeld 1 usw.
Ich wollte mit dem Makro erreichen, dass das jeweilige Textfeld mit Namen abgefragt wird.
Jetzt öffnet sich das Abfragefeld mit "Bitte geben Sie den Wert für das Feld `Textfeld 1`ein:"
und ich hatte gerne, dass es den Namen des Feldes, also z.B. "Vorname" in diese Abfrage integriert,
sprich sie aus dem jeweiligen Feld ausliest. Vergeben habe ich Name und auch Bezeichnung des Feldes,
aber es funzt nicht
Das Dokument, welches mit den Textfeldern versehen wird, ist recht lang und hat viele Variablen und wenn ich
dann immer schauen muss, welches Textfeld welche Nummer hat ...
Vielen Dank im Voraus!
OkidokiB
Re: Absoluter Neuling braucht etwas Hilfe :-)
Hallo,
wie du an meiner Beispiedatei siehst, funktioniert es mit dem Namen.
Wenn bei dir "Textfeld 1" erscheint, dann heißt dein Textfeld offensichtlich so.
Was ist für dich der Name des Textfeldes?
wie du an meiner Beispiedatei siehst, funktioniert es mit dem Namen.
Wenn bei dir "Textfeld 1" erscheint, dann heißt dein Textfeld offensichtlich so.
Was ist für dich der Name des Textfeldes?
Gruß,
mikeleb
mikeleb
Re: Absoluter Neuling braucht etwas Hilfe :-)
Hallo,
wenn ich ein Textfeld erstelle, dann kann ich ja mit Rechtsklick einen Namen vergeben und auch eine Bezeichnung.
Dort habe ich z.B. bei beidem "Name" eingegeben und dachte, mit dem Makro würde ich das so abfragen.
Aber scheinbar mache ich da einen Denkfehler?
Textfeld heißt es ja vermutlich standardmäßig, weil es ja in der Auswahl des Menüs (ob ich ein Textfeld erstelle, ein Formular oder etc.)
auch so bezeichnet wird.
Grüße!
OkdidokiB
wenn ich ein Textfeld erstelle, dann kann ich ja mit Rechtsklick einen Namen vergeben und auch eine Bezeichnung.
Dort habe ich z.B. bei beidem "Name" eingegeben und dachte, mit dem Makro würde ich das so abfragen.
Aber scheinbar mache ich da einen Denkfehler?
Textfeld heißt es ja vermutlich standardmäßig, weil es ja in der Auswahl des Menüs (ob ich ein Textfeld erstelle, ein Formular oder etc.)
auch so bezeichnet wird.
Grüße!
OkdidokiB
Re: Absoluter Neuling braucht etwas Hilfe :-)
Hallo,
was zeigt meine Datei bei dir an?
was zeigt meine Datei bei dir an?
Gruß,
mikeleb
mikeleb
Re: Absoluter Neuling braucht etwas Hilfe :-)
Hallo,
sie zeigt ein Eingabefeld an eben mit dem Text, den ich oben schrieb und statt "Name" eben "Textfeld 1" beim ersten Feld, beim zweiten Feld statt "Vorname" eben dann "Textfeld 2".
Sorry, dass ich da nicht mehr erklären kann, ich bin sowohl in Openoffice vollkommen neu als auch in OpenOffice Basic.
sie zeigt ein Eingabefeld an eben mit dem Text, den ich oben schrieb und statt "Name" eben "Textfeld 1" beim ersten Feld, beim zweiten Feld statt "Vorname" eben dann "Textfeld 2".
Sorry, dass ich da nicht mehr erklären kann, ich bin sowohl in Openoffice vollkommen neu als auch in OpenOffice Basic.
Re: Absoluter Neuling braucht etwas Hilfe :-)
Hallo,
Es ist nur seltsam, da bei mir sowohl mit OpenOffice als als mit LibreOffice die Anzeige:
Dafür ist keine Entschuldigung nötig.Sorry, dass ich da nicht mehr erklären kann, ich bin sowohl in Openoffice vollkommen neu als auch in OpenOffice Basic.
Es ist nur seltsam, da bei mir sowohl mit OpenOffice als als mit LibreOffice die Anzeige:
erscheint. Welche Programmversion und welches Betriebssystem benutzt du?Bitte geben Sie den Wert für das Feld 'Name' ein:
Gruß,
mikeleb
mikeleb
Re: Absoluter Neuling braucht etwas Hilfe :-)
Hallo,
ja, das ist wirklich seltsam.
Also ich nutze MAC OS 13.3.1 und OpenOffice 4.1.14
Eigentlich bin ich kein Fan der neusten Versionen, aber musste es
wegen einer Software machen, die sonst auch nicht richtig funktioniert.
Wäre jetzt doof, wenn ich mir dadurch den Weg versperrt habe, diese Sache
hier richtig zum Laufen zu bringen.
Das Auswahlmenü, welches ich nutzen kann, für das jeweilige Feld, ist auch deutlich
eingeschränkter aus bei deinem Screenshot, der Name des Feldes ist aber auswählbar und von
mir auch vergeben, daher sollte es eigentlich auch gleichermaßen funktionieren!?
Danke für die Hilfe!
OkidokiB
ja, das ist wirklich seltsam.
Also ich nutze MAC OS 13.3.1 und OpenOffice 4.1.14
Eigentlich bin ich kein Fan der neusten Versionen, aber musste es
wegen einer Software machen, die sonst auch nicht richtig funktioniert.
Wäre jetzt doof, wenn ich mir dadurch den Weg versperrt habe, diese Sache
hier richtig zum Laufen zu bringen.
Das Auswahlmenü, welches ich nutzen kann, für das jeweilige Feld, ist auch deutlich
eingeschränkter aus bei deinem Screenshot, der Name des Feldes ist aber auswählbar und von
mir auch vergeben, daher sollte es eigentlich auch gleichermaßen funktionieren!?
Danke für die Hilfe!
OkidokiB
Re: Absoluter Neuling braucht etwas Hilfe :-)
Hallo,
mach' mal bitte einen Screenshot zum Vergleich.
mach' mal bitte einen Screenshot zum Vergleich.
Gruß,
mikeleb
mikeleb
Re: Absoluter Neuling braucht etwas Hilfe :-)
Hallo,
anbei einmal die gesammelten Screenshots, ich hoffe, das hilft
Grüße!
OkdokiB
anbei einmal die gesammelten Screenshots, ich hoffe, das hilft
Grüße!
OkdokiB
- Dateianhänge
-
- Bildschirmfoto 2023-04-10 um 23.17.18.jpg (128.85 KiB) 2095 mal betrachtet
-
- Bildschirmfoto 2023-04-10 um 23.18.26.png (242.94 KiB) 2095 mal betrachtet
-
- Bildschirmfoto 2023-04-10 um 23.19.30.png (253.85 KiB) 2095 mal betrachtet
Re: Absoluter Neuling braucht etwas Hilfe :-)
Hallo,
klick mal im Kontextmenü auf "Kontrollfeld" ...
klick mal im Kontextmenü auf "Kontrollfeld" ...
Gruß,
mikeleb
mikeleb
Re: Absoluter Neuling braucht etwas Hilfe :-)
YUHUUUUU!!!
Ach wie toll, super dicken Dank!
Dann bastel ich hier mal weiter und hoffe nicht noch weitere doofe Fragen stellen zu müssen!
Echt Klasse! DANKE!
Grüße
OkidokiB
Ach wie toll, super dicken Dank!
Dann bastel ich hier mal weiter und hoffe nicht noch weitere doofe Fragen stellen zu müssen!
Echt Klasse! DANKE!
Grüße
OkidokiB
Re: Absoluter Neuling braucht etwas Hilfe :-)
Hallo,
ich habe leider noch mal ein Problem, ich versuche gerade ein vorhandenes Dokument mit befüllbaren Feldern zu versehen, dabei tritt folgender Fehler nach Ausführen des Makros aus und ich weiß nicht warum:
Basic-Laufzeitfehler. Es ist eine Exception aufgetreten
Type: com.sun.star.container.NoSuchElemntMessage:.
mit Hinweis auf folgende Zeile:
For Each field In form.getByName("MainForm")
Komischerweise funktioniert es aber in meinem Testdokument nach wie vor.
Hast Du evt. noch eine Lösung dafür, müsste das eigentlich heute Nacht fertig bekommen
Liebe Grüße
OkidokiB.
ich habe leider noch mal ein Problem, ich versuche gerade ein vorhandenes Dokument mit befüllbaren Feldern zu versehen, dabei tritt folgender Fehler nach Ausführen des Makros aus und ich weiß nicht warum:
Basic-Laufzeitfehler. Es ist eine Exception aufgetreten
Type: com.sun.star.container.NoSuchElemntMessage:.
mit Hinweis auf folgende Zeile:
For Each field In form.getByName("MainForm")
Komischerweise funktioniert es aber in meinem Testdokument nach wie vor.
Hast Du evt. noch eine Lösung dafür, müsste das eigentlich heute Nacht fertig bekommen
Liebe Grüße
OkidokiB.
Re: Absoluter Neuling braucht etwas Hilfe :-)
Hallo,
das Dokument hat vielleicht kein Formular namens "MainForm" oder es enthält keine Elemente oder ...
das Dokument hat vielleicht kein Formular namens "MainForm" oder es enthält keine Elemente oder ...
Gruß,
mikeleb
mikeleb