Seite 1 von 1

Makro Speichern unter.. vorhandenen Ordner prüfen

Verfasst: Fr, 06.10.2023 18:34
von DirexAlex
Hallo,
ich bin ein 100%iger Newbie in Sachen Calc und Makros. Ich habe mir folgenden Code zusammengestückelt:

sub speichern

odoc=thiscomponent
oblatt=odoc.sheets(0)
sname=oblatt.getcellrangebyname("K17").string
spfad1=oblatt.getcellrangebyname("i16").string
spfad2=oblatt.getcellrangebyname("j16").string
spfad3=oblatt.getcellrangebyname("p16").string
surl=converttourl(spfad1 & spfad2 & spfad3 & sname & ".ods")
dim dummy()
odoc.storeasurl(surl,dummy())

end sub


Das heißt der Speicherpfad wird aus 3 Zellen zusammen gesucht + Dateiname aus einer Zelle.
Das funktioniert auch alles sehr gut, allerdings erstellt er den Dateipfad neu obwohl dieser schon existiert. Dieser sollte allerdings immer schon existieren da dieser vorher angelegt werden muss.

Wie kann ich Folgendes erreichen?:
1. Prüfung ob der Dateipfad existiert, wenn nein dann soll eine Meldung kommen á la "Bitte zuerst Pfad erstellen"
2. Prüfung ob der Dateipfad existiert, wenn ja dann ob der Dateiname schon exisitiert. Wenn nein, soll er die Datei unter dem Dateinamen (sname) dort speichern
3. Prüfung ob der Dateipfad existiert, wenn ja dann ob der Dateiname schon exisitiert. Wenn ja soll der Dialog "Speichern unter" aufgehen.

Ich habe keine Ahnung ob sowas überhaupt funktioniert, wenn ja wäre es toll wenn mir jemand von euch helfen könnte.

Vielen Dank schon mal und liebe Grüße

Alex

Re: Makro Speichern unter.. vorhandenen Ordner prüfen

Verfasst: Fr, 06.10.2023 19:04
von Karolus
Das funktioniert auch alles sehr gut, allerdings erstellt er den Dateipfad neu obwohl dieser schon existiert. Dieser sollte allerdings immer schon existieren da dieser vorher angelegt werden muss.
Häh?

wenn
3. …
das ist was du eigentlich möchtest, dann soltest du das tun was du eigentlich möchtest … nämlich →Datei→Speichern unter aufrufen, statt das irgendwie uneigentlich in ein Makro zu packen!

Re: Makro Speichern unter.. vorhandenen Ordner prüfen

Verfasst: Fr, 06.10.2023 19:27
von DirexAlex
Hallo,

vielen Dank für deine Antwort.

Allerdings funktioniert es jetzt, ich weiß aber leider nicht wieso. Ich habe nur die 3 Zellen die den Pfad ergeben in einer weiteren Zelle zusammengefasst, jetzt geht´s.

Gruß Alex

Re: Makro Speichern unter.. vorhandenen Ordner prüfen

Verfasst: So, 08.10.2023 08:37
von Hiker
Hast Du Dir mal per MsgBox angesehen, was bei
spfad1 & spfad2 & spfad3 & sname & ".ods"
erzeugt wurde?

Re: Makro Speichern unter.. vorhandenen Ordner prüfen

Verfasst: So, 08.10.2023 08:48
von DirexAlex
Hallo,

wie macht man sowas? Ich denke ich muss mir mal zunächst grundlegende Dinge aneignen. Gibt es da irgendwo einen Online-Wirkshop oder so?

Vielen Dank und Gruß
Alex

Re: Makro Speichern unter.. vorhandenen Ordner prüfen

Verfasst: So, 08.10.2023 09:06
von F3K Total
Auch wenn ich Karolus zustimme,
versuche mal dieses:

Code: Alles auswählen

sub speichern

    odoc=thiscomponent
    oblatt=odoc.sheets(0)
    sname=oblatt.getcellrangebyname("K17").string
    spfad1=oblatt.getcellrangebyname("i16").string
    spfad2=oblatt.getcellrangebyname("j16").string
    spfad3=oblatt.getcellrangebyname("p16").string
    sFolderUrl = converttourl(spfad1 & spfad2 & spfad3)
    inputbox(,, convertFROMurl(sFolderUrl))
    if fileexists(sFolderUrl) then
        msgbox "ja"
    else
        msgbox "nein"
    endif
    sFileurl = converttourl(sFolderUrl & sname & ".ods")
    msgbox sFileurl
    if fileexists(sFileurl) then
        msgbox "ja"
    else
        msgbox "nein"
    endif
    dim dummy()
    'odoc.storeasurl(surl,dummy())

end sub
Gruß R

Re: Makro Speichern unter.. vorhandenen Ordner prüfen

Verfasst: Mi, 11.10.2023 07:45
von DirexAlex
Hallo,
vielen Dank für deine Antwort.

Gruß Alex