Dokument per Makro speichern (Pfad nicht verändern)

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Dokument per Makro speichern (Pfad nicht verändern)

von Paule » Do, 24.11.2005 10:33

Ja ist genau das was ich brauchte

5000 danke

paule

von Toxitom » Do, 24.11.2005 09:56

Hey Paule,

also oK, hier ein Code:

Code: Alles auswählen

Sub DateiSpeichern
	dim oDoc as Object, oSheet as object
	dim sDateiname as string, msg1 as string, msg2 as string
	dim n as integer, sUrl as string, sUrl2 as string
	dim arg()
	msg1 = "Sorry, das Dokument hat noch keine URL!"
	msg2 = "Bitte erst einmal speichern"
	oDoc = thisComponent
	if oDoc.url = "" then
	  msgbox (msg1 & chr(13) & msg2, 16, "Fehler")
	  exit sub
	end if
	sURL = oDoc.url
	n = 1
	do while instr(n+1, sUrl, "/") <> 0
	  n = instr(n+1, sURl,"/")
	loop
	oSheet = oDoc.sheets().getByName("Konfiguration")
	If oSheet.getCellRangeByName("E13").string <> "" then
	   sUrl2 = oSheet.getCellRangeByName("E13").string
	else sUrl2 = oSheet.getCellRangeByName("E7").string & _
	             "_" & oSheet.getCellRangeByName("E11").string
	end if
	sUrl = left(sUrl, n) & sUrl2
	oDoc.storeAsUrl(sUrl, arg())
End Sub
Macht genau das, was du suchtest. Allerings müssen in den Zellen E13, E7 und E11 auch wirklich "Texte" drin stehen, sonst musst du entsprechend das Makro anpassen (falls Zahlen drin sind!)

Im Übrigen speichert das Makro das Dokument und dieses wird gelichzeitig das aktive. Willst du es nur speichern und das alte Dokument aktiv belassen, so ändere die Methode "StoreAsUrl()" um in "StoreToUrl()".

Ich hoffe, es hilft.

Gruss
Thomas

PS: ich hab das Leerzeichen im Dateipfad durch einen Unterstrich ersetzt. Leerzeichen in Dateinamen "gehören" sich nicht :wink: (ja, ich weiss, eine große Firma hat das eingeführt....) Nimm statt dessen besser Unterstriche!

von Paule » Do, 24.11.2005 08:59

Am einfachsten: Du sagst, dein Dokument soll unter einen anderen Namen abgespeichert werden? Dann hat dein Ursprungsdokument ja schon einen Namen und eine URL -> na, dann kannste diese auslese, den Dateinamen ändern, und das Dokument im selben Verzeichnis abspeichern
Genau so soll das sein! Dacht erst das wär nicht möglich.
Bei den Code bräuchte ich aber schon hilfe...

also:
auf der Tabelle "Konfiguration" (ist die 3 Tabelle) steht in Zelle E 13 der neue Dateiname. Wenn aber E 13 leer ist dann soll der Dateiname aus E 7 und E 11 (quasi E7&" "&E11) gebildet werden.

nu hab ich keinen Plan wie ich das realisieren soll.
:roll:

vielen dank im voraus


Paule

von Toxitom » Mi, 23.11.2005 17:43

Hey Paule,

definier mal "Standardpfad"??? Da zum Speichern eines Dokumentes immer die komplette URL angegeben werden muss, brauchst du schon einen Pfad.

Am einfachsten: Du sagst, dein Dokument soll unter einen anderen Namen abgespeichert werden? Dann hat dein Ursprungsdokument ja schon einen Namen und eine URL -> na, dann kannste diese auslese, den Dateinamen ändern, und das Dokument im selben Verzeichnis abspeichern.

Wenn du Code brauchst, sag noch mal Bescheid, aber gibt dann die Daten weiter (Pfad, Tabelle und Zelle /n , welche dei Daten eenthalten).

Gruss
Thomas

Dokument per Makro speichern (Pfad nicht verändern)

von Paule » Mi, 23.11.2005 16:00

Moin

Ich habe das Forum schon nach dem thema durchforstet finde aber nicht die Lösung zu meinem Problem.

Folgendes:

ich möchte das mein Dokument (Calc) nach betätigung eines Buttons unter einem andern Namen gespreichert wird.

Der Namen setzt sich aus den Werten/ Text in 2 Zellen zusammen. Es soll jedoch nicht der Pfad mitangegeben werden da ich diesen vorzugsweise aus den Einstellungen von OO übernehmen will.
Sons muss ich ja wenn sich mein "StandardPfad" ändert jedes mal das Makro umschreiben, und da das Dokument an verschiedene User geht gibt es halt auch verschiedene Standard Pfade.
Hoffe ich hab mich verständlich ausgedrückt :)

Wäre toll wenns dazu ne Lösung gibt


grüße

Paule

Nach oben