Seite 1 von 1

Writer: Dateinamen aus Zelle erzeugen

Verfasst: Sa, 03.09.2011 16:54
von fuhlbru
Hallo, bin neu hier und hab ein Problem mit einem Textblatt.
Ich habe in dem Textblatt 3 Tabellen erzeugt und möchte aus
der ersten Tabelle Zelle A1 den Dateinamen per Macro erzeugen
und speichern. Ich bekomme beim ausführen des Macros
eine Basic Laufzeitfehler in Zeile 5,
den ich nicht erklären kann.
Vielleicht kann mir ja jemand helfen.
Der Code ist angehängt.....

Code: Alles auswählen

Sub Speichern_als_Zellname
dim dummy()
 oDoc = thisComponent
  sTabName = "Tabelle1, 0"
  JumpToSheetsName(oDoc, sTabName)
datei="C:/Users/BeFu/Documents/RG/"& myString &".ods"
dateiurl=converttourl(datei)
odoc=thisComponent
odoc.storeasurl(dateiurl,dummy())
rem oder
rem odoc.storetourl(dateiurl,dummy())
End Sub


Moderation,4: verschoben in BASIC-Unterbereich, wo alle Makro-Fragen hin gehören; Betreff angepasst; CODE tags gesetzt

Re: Dateinamen aus Zelle erzeugen

Verfasst: Sa, 03.09.2011 17:44
von komma4
Willkommen im Forum
fuhlbru hat geschrieben:eine Basic Laufzeitfehler in Zeile 5,
den ich nicht erklären kann.
Zeile 5

Code: Alles auswählen

  JumpToSheetsName(oDoc, sTabName)
Wo ist diese benutzerdefinierte Funktion?
Und für was soll sie gut sein?
Du kannst einen Zellinhalt ermitteln, auch ohne auf das Tabellenblatt zu wechseln.


Im Weiteren:

wo ist die Belegung der Variablen myString?

Warum dimensionierst Du dummy(), wenn die Angabe eines leeren Arrays in der Form Array() ausreichen würde?
Warum Du diese Frage im WRITER-Unterforum gepostet hast... frage ich besser nicht 8)

Re: Calc: Dateinamen aus Zelle erzeugen

Verfasst: Sa, 03.09.2011 22:03
von fuhlbru
Hallo Winfried, ich habe den Code aus einer OO Platform
geladen., da es mein Problem lösen sollte.
Im Writer habe ich das Problem geposted, weil mit
die Forumsgewonheiten nicht geläufig sind, ich aber das
Dokument im Writer erstellt habe.
Vielleicht hast du ja eine Idee mir trotzdem
weiterzuhelfen.



Moderation,4: Betreff angepasst

Re: Calc: Dateinamen aus Zelle erzeugen

Verfasst: So, 04.09.2011 00:28
von F3K Total
Hallo fuhlbru
fuhlbru hat geschrieben:ich aber das Dokument im Writer erstellt habe.
... und warum willst Du es dann als Calc-Datei speichern?
fuhlbru hat geschrieben:datei="C:/Users/BeFu/Documents/RG/"& myString &".ods"
???
versuch es mal hiermit:

Code: Alles auswählen

Sub Speichern_als_Zellname

oDoc = thisComponent
rem Zugriff auf Tabelle1
otable=oDoc.Texttables.Tabelle1
rem Zugriff auf Zelle A1
ocell=otable.getCellbyName("A1")
rem alternativ geht auch diese Methode:
rem ocell =otable.getCellbyposition(0,0)
rem Zellinhalt auslesen
oString = ocell.String
rem in den Pfad einbauen
datei = "C:/Users/BeFu/Documents/RG/"& oString &".odt"
dateiurl = converttourl(datei)
rem speichern
rem odoc.storeAsurl(dateiurl,Array())'Ursprungsdatei wird umbenannt
odoc.storeTourl(dateiurl,Array())'Ursprungsdatei bleibt erhalten

End Sub
Gruß R

Re: Writer: Dateinamen aus Zelle erzeugen

Verfasst: So, 04.09.2011 12:10
von fuhlbru
Hallo, habe deinen Code sofort ausprobiert,
danke für die schnelle Hilfe......
Habe aber trotzdem noch ein Problem damit.
Wenn ich das Macro im Einzelschritt durchlaufen lasse,
bekomme ich ander Stelle.....
datei = "C:/Users/BeFu/Documents/RG/" & oString &".odt"
die Meldung " Die Operaton auf datei = "C:/Users/BeFu/Documents/RG/" & oString &".odt"
wurde mit einem ungültigen Parameter gestartet.
Leider bin ich nicht in der Lage diese Problem zu
durchschauen, habe normalerweise mit Basic nichts zu tun.
Für weitere Unterstützung wäre ich daher dankbar....

Re: Writer: Dateinamen aus Zelle erzeugen

Verfasst: So, 04.09.2011 12:32
von komma4
fuhlbru hat geschrieben:"Die Operaton auf datei = "C:/Users/BeFu/Documents/RG/" & oString &".odt"
wurde mit einem ungültigen Parameter gestartet.
Eine solche Meldung sollte an dieser Code-Stelle nicht vorkommen dürfen!
Es wird nämlich keine "Operation" (auf Dateiebene) ausgelöst, sondern "nur" eine Zeichenverkettung.


Was steht denn in der Zelle A1 Deiner ersten Tabelle?
Text? Mit Sonderzeichen? Zeilenumbruch o.ä.?



Der gepostete Code funktioniert hier einwandfrei

Re: Writer: Dateinamen aus Zelle erzeugen

Verfasst: So, 04.09.2011 13:20
von fuhlbru
Habe in den Zellen A1 - C1 eigentlich nur Zahlen stehen,
Kd. Nr. / Rg. Nr. und Datum, komischerweise ist in diesen 3 Zelle jeweils am rechten Rand ein roter Pfeil

Re: Writer: Dateinamen aus Zelle erzeugen

Verfasst: So, 04.09.2011 13:36
von fuhlbru
Habe das Problem mit den Pfeilen gelöst, war wohl noch Inhalt in der Zell aber nicht sichtbar,
konnte ich durch markieren und ausschneiden lösen.
Das Macro läuft im Einzelschritt jetzt durch aber wenn ich den Button drücke um das Macro
auzuführen bekomme ich folgende Mitteilung.....
Ein Skripting Framework Fehler trat während der Ausführung von Basic Script
vnd.sun.star.scipt:Standard.A1_Speichern.Main?
language=Basic&location=application auf.
Meldung: The following Basic script could not be found:
Library:'Standard'
module:'A1_Speichern'
method:'Main'
location:'application'

Re: Writer: Dateinamen aus Zelle erzeugen

Verfasst: So, 04.09.2011 14:06
von fuhlbru
Hallo, habe das Problem selbst gelöst.
Lag an dem Menüpunkt für die Ausführung des Macros.
Habe den Menüpunkt gelöscht und neu angelegt.
Läuft jetzt alles einwandfrei.........
Vielen Danke für die Unterstützung !!!!!