Dateiname aus Zelle(n) erzeugen
Moderator: Moderatoren
-
- Beiträge: 4
- Registriert: Sa, 20.01.2007 19:08
Dateiname aus Zelle(n) erzeugen
Ist mein erster Beitrag, deshalb erstmal ein Hallo an alle.
Meine Frage: Gibt es eine Möglichkeit, aus einer oder mehreren Zellen automatisch den Dateinamen zu generieren, wenn ich auf speichern klicke.
Beispiel: Zelle A1 enthält einen Namen, Zelle C8 enthält einen Ort. Bei Klick auf Speichern entsteht eine Datei namens Name_Ort.ods
Falls es schon einen Thread zu diesem Thema gibt, habe ich ihn nicht gefunden. Viele Grüße und danke...
Meine Frage: Gibt es eine Möglichkeit, aus einer oder mehreren Zellen automatisch den Dateinamen zu generieren, wenn ich auf speichern klicke.
Beispiel: Zelle A1 enthält einen Namen, Zelle C8 enthält einen Ort. Bei Klick auf Speichern entsteht eine Datei namens Name_Ort.ods
Falls es schon einen Thread zu diesem Thema gibt, habe ich ihn nicht gefunden. Viele Grüße und danke...
Hallo
Schau dir dir mal dies an, dürftest du dir auf deine Wünsche anpassen können.http://www.ooo-portal.de/index.php?modu ... topic=3155
Bei Problemen frag noch mal nach.
Gruß Karo
Schau dir dir mal dies an, dürftest du dir auf deine Wünsche anpassen können.http://www.ooo-portal.de/index.php?modu ... topic=3155
Bei Problemen frag noch mal nach.
Gruß Karo
-
- Beiträge: 4
- Registriert: Sa, 20.01.2007 19:08
Danke für die extrem schnelle Antwort, Karo. Ich kann dank Deiner Hilfe jetzt Dateien mit dem Namen eines Feldes erzeugen. Ich bekomm's aber nicht hin, dass Calc den Inhalt von zwei Feldern kombiniert. Also A1_C3.ods
Bin leider der totale Nullblicker, wenn's um Programmier- oder Skriptsprachen aller Art geht. Wäre für weitere Hilfe natürlich dankbar, versuch jetzt aber auch einfach weiter dran zu knobeln.
Bin leider der totale Nullblicker, wenn's um Programmier- oder Skriptsprachen aller Art geht. Wäre für weitere Hilfe natürlich dankbar, versuch jetzt aber auch einfach weiter dran zu knobeln.
Hallo
Ist doch im Prinzip nur eine Zeile in der du C8 als Variable definierst .
Am Stück:
In der Zeile: 'dateipfad.... ' musst du noch deinen Verzeichnisspfad eintragen.
Zum Speichern verknüpsft du am besten dieses Makro mit einer Schaltfläche im Dokument.
Eine Anleitung findest du hier:http://www.ooowiki.de/MakrosMitEinemKlick
Gruß Karo
Ist doch im Prinzip nur eine Zeile in der du C8 als Variable definierst .
Am Stück:
Code: Alles auswählen
Sub speichern_unter_A1_und_C8
dim dummy()
myDoc = thisComponent
mySheet = myDoc.sheets(0) '1. Tabellenblatt
namenszelle = mysheet.getCellRangeByName("A1")
ortszelle = mysheet.getCellRangeByName("C8")
'Lesen der Werte
Dateiname= namenszelle.string &"_" & ortszelle.string
dateipfad="dein/Verzeichniss/Pfad/"& Dateiname &".ods"
'dein Pfad muss ^^^^^^^^^^^^^^^ dort innerhalb der "-Anführungszeichen stehen !
dateiurl=converttourl(dateipfad)
mydoc.storeasurl(dateiurl,dummy())
rem oder
rem mydoc.storetourl(dateiurl,dummy())
End Sub
Zum Speichern verknüpsft du am besten dieses Makro mit einer Schaltfläche im Dokument.
Eine Anleitung findest du hier:http://www.ooowiki.de/MakrosMitEinemKlick
Gruß Karo
-
- Beiträge: 4
- Registriert: Sa, 20.01.2007 19:08
Danke an Euch beide. Es funktioniert mit beiden Methoden. Habe nur noch das Problem, das er mir jetzt beim Starten des Dokuments einen Laufzeitfehler in folgender Zeile bringt:
Danke schon mal für die schnelle und gezielte Hilfe. Ihr habt echt Tage des verzweifelten Ausprobierens beendet.
Code: Alles auswählen
mySheet = myDoc.sheets(0)
-
- Beiträge: 4
- Registriert: Sa, 20.01.2007 19:08
Das ist der Code des Makros:
Das Makro läuft in einer Dokumentenvorlage und ist dem Ereignis ""Geändert"-Status wurde geändert" zugewiesen.
Funktioniert einwandfrei, ich muss aber jedesmal den Debugger wegklicken, wenn ich das Dokument starte.
Ach ja, ich benutze Openoffice 2.1.
Vielen Dank für Eure Hilfe!
Code: Alles auswählen
Sub Speichern_als_Zellname
dim dummy()
myDoc=thisComponent
mySheet=myDoc.sheets(0)
myCell=mySheet.getCellByPosition(3,0)
myString=myCell.string
datei="D:/Rechnungen/"& myString &".ods"
dateiurl=converttourl(datei)
odoc=thisComponent
odoc.storeasurl(dateiurl,dummy())
rem oder
rem odoc.storetourl(dateiurl,dummy())
Funktioniert einwandfrei, ich muss aber jedesmal den Debugger wegklicken, wenn ich das Dokument starte.
Ach ja, ich benutze Openoffice 2.1.
Vielen Dank für Eure Hilfe!
Re: Dateiname aus Zelle(n) erzeugen
Hallo
Ich habe OO3 mit win XP und 7 bei mir funktioniert leider keiner der Makros die ihr Gepostet habt.
Ich hätte noch eine Anforderung ans Makro ich möchte immer einen einen fixen Text dazufügen
z.b. "A1"_text.ods
Lg Mani
Moderation,4: es reicht, wenn Du hier in diesem Thread nachfragst. Deshalb habe ich Dein anderes Posting gelöscht. Die Antwort von Karolus hätte ich Dir auch gegeben. Also bitte: Deinen Lösungsversuch hier posten und die Fehler(-meldungen) beisteuern; Danke
Ich habe OO3 mit win XP und 7 bei mir funktioniert leider keiner der Makros die ihr Gepostet habt.
Ich hätte noch eine Anforderung ans Makro ich möchte immer einen einen fixen Text dazufügen
z.b. "A1"_text.ods
Lg Mani
Moderation,4: es reicht, wenn Du hier in diesem Thread nachfragst. Deshalb habe ich Dein anderes Posting gelöscht. Die Antwort von Karolus hätte ich Dir auch gegeben. Also bitte: Deinen Lösungsversuch hier posten und die Fehler(-meldungen) beisteuern; Danke
Danke für eure Geduld
Re: Dateiname aus zelle erstellen
Hallo
Grundsätzlich funktioniert das, wenn du aber lediglich die Information "es geht nicht" lieferst, kann dir keiner helfen.
Karo
Grundsätzlich funktioniert das, wenn du aber lediglich die Information "es geht nicht" lieferst, kann dir keiner helfen.
Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Re: Dateiname aus Zelle(n) erzeugen
Leider sind diese Makros für mich zu kompliziert das ich sie für meine Zwecke adaptieren kann,
ich bin erst Anfänger in Sachen Programmieren.
Lg Mani
ich bin erst Anfänger in Sachen Programmieren.
Lg Mani
Danke für eure Geduld
Re: Dateiname aus Zelle(n) erzeugen
Hallo
mglw. gibts da ein Problem mit den :Doppelpunkten im Dateinamen, stell mal die Formatierung der Zelle G72 um, zb. auf einen Zeit-format-code HH"_"MM"_"SS
Karolus
mglw. gibts da ein Problem mit den :Doppelpunkten im Dateinamen, stell mal die Formatierung der Zelle G72 um, zb. auf einen Zeit-format-code HH"_"MM"_"SS
Karolus
LO7.4.7.2 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Re: Dateiname aus Zelle(n) erzeugen
Hallo
Was jetzt,vor einer knappen Woche war alles gut, und jetzt plötzlich Win10 und "geht nicht"
Meine Glaskugel ist noch zur Erholungskur auf Madeira!
Was jetzt,vor einer knappen Woche war alles gut, und jetzt plötzlich Win10 und "geht nicht"
Meine Glaskugel ist noch zur Erholungskur auf Madeira!
LO7.4.7.2 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Re: Dateiname aus Zelle(n) erzeugen
Was soll es denn mit einer Dateinamenskonvention zu tun haben wenn nichts gelesen wird?Wenn ich das MAkro nun starte liest es anscheinend die Zellen nicht mehr aus und es speichert unter "__" also einfach die beiden Unterstriche die zwischen name _Datum_Uhrzeit stehen .
Hat Win 10 wieder andere Dateinamenskonventionen ?!?
Sorry, nur das sind Deine Worte und da aus Deinen Gesamtausführungen (für mich) keine Fehlerursache ersichtlich ist, scheint mir diese Frage deshalb sinnvoll weil Du Dir ja etwas bei der Aussage gedacht haben musst und wenn wir wüssten was führt das vielleicht zu einer Lösung.
Ansonsten versuche ich mich einmal im Raten:
der Fehler ist das das Tabellenblatt mit dem Index 0 ein Anderes ist als vorher (z.B. weil ein neues Blatt in die Datei eingefügt wurde) und auf dem jetzt aktuellen Tabellenblatt mit Index 0 die betreffenden Zellen leer sind.
Gruß
Stephan
Re: Dateiname aus Zelle(n) erzeugen
Und was ist "das"?genau das ....
das hattest Du bereits geschriebenDas MAkro speichert zwar im richtigen Pfad .... jedoch ohne Name Datum und Uhrzeit .... nur die beiden Trenn-Unterstriche sind da als Dateiname
Wenn Du keine weiteren Informationen hast kann Dir niemand helfen, das Makro ansich ist einwandfrei und da alles darauf hindeutet das aus den Zellen keine Werte gelesen werden können hatte ich auch bereits eine Mutmaßung geäußert was dafür die Ursache sein kann.
Gruß
Stephan