Speichern unter... mit Makros!?

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: Speichern unter... mit Makros!?

Re: Speichern unter... mit Makros!?

von xboxkill » Do, 16.08.2007 08:27

Also ich habe jetzt den Code von turtle47 genommen. Er funktioniert einwandfrei perfekt^^
Im moment ist es 'noch' nicht nötig, die Geburtsdaten einzufügen [mein Glück^^]

Greetz

Re: Speichern unter... mit Makros!?

von turtle47 » Mi, 15.08.2007 16:52

Hallo Xboxkill,

wie sieht denn Dein fertiger Code jetzt aus?

Ich möchte gerne auch noch was lernen. 8)

Schöne Grüße.

Jürgen

Edit: Es kann ja auch schon mal Namensgleichheit bei verschieden Personen auftreten.
Peter Schmitz zum Beispiel gibt es in Kölle (Köln) wie Sand am Meer.
Es würde vielleicht helfen das Geburtsdatum in den Dateinamen mit einzubinden was ich in dem folgenden Code gemacht habe.
Voraussetzung ist, dass in in Zelle B5 das Geburtsdatum im Format "TT.MM.JJJJ" steht.
Ist nur so ne Idee.

Code: Alles auswählen

Sub Speichern_Anamnese_1
   Dim oDoc As Object
   Dim oSheet As Object
   Dim oSheets As Object
   Dim oCell As Object
   Dim sName As String
   Dim sVorname As String
   Dim TempName As String
   Dim Dirname As String
   Dim sLaufwerk As String
   Dim Nr As Integer
   dim dummy()
   oDoc = ThisComponent
   oSheet = oDoc.Sheets.getByName("Anamnese")
   'Falls der Name in einer Zelle abgelegt wurde:
   oCell = oSheet.getCellByPosition(1, 0) 'Tabellenfeld, in dem der Name steht
   sName = oCell.String
   oCell = oSheet.getCellByPosition(1, 1) 'Tabellenfeld, in dem der Vorname steht
   sVorname = oCell.String
   oCell = oSheet.getCellByPosition(1, 4) 'Tabellenfeld, in dem das Geburtsdatum steht (Format TT.MM.JJJJ)
   sGebdatum= oCell.String
   sGebdatTag=left(sGebdatum,2)
   sGebdatMonat1=left(sGebdatum,5)
   sGebdatMonat=right(sGebdatMonat1,2)
   sGebdatJahr=right(sGebdatum,4)
   sGebdat= sGebdatTag & "_"& sGebdatMonat & "_" & sGebdatJahr
   sLaufwerk = "C:/"
   Filename = sName & "_" & sVorname
   Dirname =  Left(sName,1)
   neuerpfad = sLaufwerk + Dirname + "/" + Filename +"_" + sGebdat + ".ods"
   dateiurl=converttourl(neuerpfad)
   odoc.storetourl(dateiurl,dummy())
End Sub
Der gespeicherte Dateiname sieht dann folgendermaßen aus:

Code: Alles auswählen

Schmitz_Peter_21_01_1958.ods

Re: Speichern unter... mit Makros!?

von xboxkill » Mi, 15.08.2007 08:00

Jawoll!!!

Eine riesiges DANKESCHÖN an euch beide!!!

Greetz

Re: Speichern unter... mit Makros!?

von turtle47 » Di, 14.08.2007 23:24

Hi Xboxkill,

hier mal ein "Grundgerüst" welches bei mir funktioniert:

Code: Alles auswählen

Sub Speichern_Anamnese
   Dim oDoc As Object
   Dim oSheet As Object
   Dim oSheets As Object
   Dim oCell As Object
   Dim sName As String
   Dim sVorname As String
   Dim TempName As String
   Dim Dirname As String
   Dim sLaufwerk As String
   Dim Nr As Integer
   dim dummy()
   oDoc = ThisComponent
   oSheet = oDoc.Sheets.getByName("Anamnese")
   'Falls der Name in einer Zelle abgelegt wurde:
   oCell = oSheet.getCellByPosition(1, 0) 'Tabellenfeld, in dem der Name steht
   sName = oCell.String
   oCell = oSheet.getCellByPosition(1, 1) 'Tabellenfeld, in dem der Vorname steht
   sVorname = oCell.String
   sLaufwerk = "C:/"
   Filename = sName & "_" & sVorname
   Dirname =  Left(sName,1)
   neuerpfad = sLaufwerk + Dirname + "/" + Filename + ".ods"
   dateiurl=converttourl(neuerpfad)
   odoc.storetourl(dateiurl,dummy())
End Sub
Den Rest kannst Du ja selber wieder einbauen. :shock:
Mir ist es jetzt zu spät dafür . :(

Viel Erfolg.

Jürgen

Re: Speichern unter... mit Makros!?

von xboxkill » Di, 14.08.2007 20:11

Hier im Anhang habe ich die Datei hochgeladen
Dateianhänge
anamnese.zip
Die Datei
(11.87 KiB) 152-mal heruntergeladen

Re: Speichern unter... mit Makros!?

von xboxkill » Sa, 11.08.2007 21:11

\\EDIT: Bin jetzt soweit, dass keine Fehler mehr in Basic sind. Nur, wenn ich das Makro teste, dann funktioniert es trotzdem nicht.

Soll ich euch die Datei mal hochladen?

Greetz

Re: Speichern unter... mit Makros!?

von komma4 » Fr, 03.08.2007 10:09

[Nörgelmodus on]
Verwende die (undokumentierte) Funktion GetPathSeparator() zum Ermitteln des Pfad-Trennzeichens: es gibt auch andere Systeme ausser Win/Dos

Nutze die Funktion ConvertToURL um einen Namen für eine Dateioperation zu generieren (OOo verwendet und erwartet die URL-Schreibweise); und ...
nach meinen Versuchen erkennt OOo automatisch den Dateityp; ein Setzen des MediaType ist nicht erforderlich. Code sollte/könnte hier dann lauten:

Code: Alles auswählen

BasicLibraries.LoadLibrary("Tools")
ThisComponent.storeToURL( ConvertToURL( Filename ) , Array() )
Dein Zähler Nr ist als Integer deklariert, aber nicht initialisiert:
* die erste Variante heisst dann "C:\Name_Vorname-0.ods"
* nach 32767 Varianten ist Schluss (Überlaufsfehler) - wahrscheinlich braucht ein Anwender nicht so viele Kopien (Schreibversuche).
[Nörgelmodus off]
Ich danke Dir Rainer auf jeden Fall aber für die Antwort: mir war die Frage zu schwammig formuliert um zu antworten... Dein Beispiel ist ausbaufähig. Mal sehen, ob der XBox-Killer damit etwas anfangen kann.

Speichern unter... mit Makros!?

von xboxkill » Do, 02.08.2007 19:08

Guten Tag alle zusammen,
ich habe ein Problem. Und zwar weiß ich nicht, wie ich ein Makro anlegen kann, welches die Datei in einem bestimmten Ordner mit Buchstaben speichert.

So soll das in etwa aussehen:

Bsp1:
Name: Mustermann
Vorname: Max
Buchstabe: M
Dateiname: Mustermann_max.ods
Ordner: M

Bsp2:
Name: Gandorf
Vorname: Irene
Buchstabe: G
Dateiname: Gandorf_irene.ods
Ordner: G

Ich hoffe ihr könnt mir weiterhelfen!!!

Danke schonmal im voraus.

Greetz
xboxkill

Nach oben