PDA

Vollständige Version anzeigen : Syntaxprobleme Variabler Pfad


sellspeed
12.07.2006, 10:14
Hallo Ihr lieben,

ich versuche ein Worddokument (soll dann ausgewählt werden im Ordner)mit einem Befehl zu öffnen. Der Pfad lautet so und das klappt.

strPfad = "z:\gemeinsame Dateien\Datenbank\" & Me.KUNDEN_BETREUER & "\"

Nun versuche ich ein bestimmtes Dokumet welches aber je nach KUNDEN_Betreuer automatisch von allen geöffnet werden kann und sich in diesem Ordner befindet. Das versuche ich so kriege es aber nicht hin:

strPfad = "z:\gemeinsame Dateien\Datenbank\" & Me.KUNDEN_BETREUER & "\Maklerauftrag.dot\"

Ist das verständlich?

braegler
12.07.2006, 10:18
Wieso hast du den 2. Backslash drin???
Probiers mal indem Du
"\Maklerauftrag.dot\"
zu
"\Maklerauftrag.dot" abänderst.

gpswanderer
12.07.2006, 10:23
Hallo,
der letzte Backslash muss in der Tat entfernt werden. Dass hier aber eine Wordvorlage (.dot) und kein Dokument (.doc) geöffnet wird ist aber schon klar oder ?

sellspeed
12.07.2006, 10:24
Nein leider nicht, er öffnet zwar den richtigen Ordner aber nicht das Dokument dieses muß ausgewählt werden...

gpswanderer
12.07.2006, 10:42
@sellspeed
Um das noch mal zu verdeutlichen: ".dot" ist kein(!) Worddokument sondern eine Wordvorlage. Mit welchem Befehl versuchst Du die Datei zu öffnen. Zeige doch hier mal Deinen kompletten Code.

sellspeed
12.07.2006, 16:57
Private Sub Befehl_AS_MA_Click()
Dim strSQL As String
Dim strEingabe As String
strEingabe = InputBox("Bitte Inhalt angeben:", "Assekuranz", "Maklerauftrag")

If StrPtr(strEingabe) = 0 Then Exit Sub

strSQL = "INSERT INTO tblkontakthistorie "
strSQL = strSQL & "([KON_KUNDEN_ID], KON_INFO, KON_ART, KON_DAT) "
strSQL = strSQL & "VALUES (" & Me!KUNDEN_ID & ",'" & strEingabe & "', 'B/Fout', Date())"
DBEngine(0)(0).Execute strSQL, dbFailOnError

Dim strPfad As String
Dim strPath As String

strPfad = "\\10.1.1.1\gemeinsam\Datenbank\" & Me.KUNDEN_BETREUER & "\Maklerauftrag.dot"
strPath = DateiOeffnen(strPfad, "Datei öffnen")
Dim X As Object
Dim Y As Object
Set X = CreateObject("Word.Application")
X.Visible = True
If Len(strPath) Then
Set Y = X.Documents.Add(strPath)

With Y
.Bookmarks("FIRMA").Range.Text = Nz(Me.KUNDEN_FIRMA)
.Bookmarks("VORNAME").Range.Text = Me.KUNDEN_VORNAME
.Bookmarks("FAMNAME").Range.Text = Me.KUNDEN_FAMNAME
.Bookmarks("STRASSE").Range.Text = Me.KUNDEN_STRASSE
.Bookmarks("PLZ").Range.Text = Me.KUNDEN_PLZ
.Bookmarks("ORT").Range.Text = Me.KUNDEN_ORT
.Bookmarks("GEBDAT").Range.Text = Nz(Me.KUNDEN_GEBDAT)

End With
End If
Exit_Befehl_AS_MA_Click:

Set Y = Nothing
Set X = Nothing
Exit Sub

Err_Befehl_AS_MA_Click:
MsgBox Err.Description
Resume Exit_Befehl_AS_MA_Click
End Sub

gpswanderer
12.07.2006, 17:58
Hallo,
mit dem Teil Deines Codes:strPath = DateiOeffnen(strPfad, "Datei öffnen")
fragst Du ja ganz explicit nach dem Dateinamen. In der davorstehenden Zeile wird ja strPfad bereits zugewiesen. Lass diese Zeile strPath = DateiOeffnen(strPfad, "Datei öffnen")
einfach mal weg und ändere den Code wie folgt:Dim strPfad As String
strPfad = "\\10.1.1.1\gemeinsam\Datenbank\" & Me.KUNDEN_BETREUER & "\Maklerauftrag.dot"
Dim X As Object
Dim Y As Object
Set X = CreateObject("Word.Application")
X.Visible = True
Set Y = X.Documents.Add(strPfad)

Bitte mit Copy und Paste den Teil einfügen. Habe den Code getestet, bei mir gehts.

Und noch mal die Frage: Warum öffnest Du eine Wordvorlage (.Dot) ?

sellspeed
13.07.2006, 10:37
Hallo Klaus,

weil ich es nicht besser weiß! Es ist nur Leuten wie Dir zu verdanken das ich überhaupt soweit gekommen bin und tatsächlich eine komplexe auf gesunden Füßen stehende DB habe die es mir ermöglicht unseren Kundenbestand individuell zu pflegen. Ist es denn notwendig die dot in doc zu ändern? Ich dachte Dokument ist Dokument, anscheinend nicht. Wenn Ja dann mache ich das.

Ach Ja funktioniert natürlich bestens. Lieben Dank!

Anne Berg
13.07.2006, 13:47
Der Einsatz einer Vorlage macht durchaus Sinn, wenn man ein neues Dokument mit vorgegebenem Inhalt öffnen (und bearbeiten) will, ohne die Originaldatei zu ändern.

gpswanderer
13.07.2006, 18:06
Hallo,

Der Einsatz einer Vorlage macht durchaus Sinn, wenn man ein neues Dokument mit vorgegebenem Inhalt öffnen (und bearbeiten) will, ohne die Originaldatei zu ändern.Ja das ist mir schon klar. Wenn ich mir den Code betrachte ist das auch so. Ich wollte eigentlich mit meiner Rückfrage noch mal gezielt darauf aufmerksam machen, dass da Unterschiede sind.

@sellspeed
Wie speicherst Du das neu erzeugte Dokument ab? Wenn Du einen neuen Namen vergibst solltest Du .dot lassen.
Und noch eine Frage, warum nimmst Du Word und nicht die Berichte von Access. Würde mich mal ganz persönlich interessieren?

sellspeed
17.07.2006, 11:43
Hallo Ihr beiden,

also wir arbeiten als Makler und hatten bereits vor der Erstellung der Datenbank die Vorlagen für unsere 486 Partnerunternehmen in Word erstelt. Ich hatte einfach keine Lust diese zu ändern, geschweige denn die ganzen Firmenlogos in die Berichte zu packen (kleine BMP). Danke nochmal für die Hilfe.

sellspeed
17.07.2006, 11:43
ach ja speichern mache ich aus word herraus macht bei unsren Arbeitsbläufen mehr sinn

Anne Berg
17.07.2006, 12:48
Wie speicherst Du das neu erzeugte Dokument ab? Wenn Du einen neuen Namen vergibst solltest Du .dot lassen.Genau das würde ich eben nicht empfehlen! :entsetzt:
Ein auf Basis einer Vorlage erstelltes Dokument ist keine Vorlage mehr!

gpswanderer
17.07.2006, 18:49
Genau das würde ich eben nicht empfehlen!
Ein auf Basis einer Vorlage erstelltes Dokument ist keine Vorlage mehr!
Hallo Anne,
da hast Du mich missverstanden. Ich meinte er soll "Dot" im Code lassen. Dann das neue Dokument mit der Endung "Doc" als neues Dokument abspeichern. Da bleibt doch die Vorlage erhalten Oder?

Anne Berg
17.07.2006, 19:46
Ja, sicher. Aber es gibt zwei Arten, Vorlagen zu "öffnen": entweder als Datei (dot-File), z.B. um die Vorlage zu ändern, oder eben als Vorlage, um damit ein neues Doc zu erstellen. Genauer gesagt: hier wird ein neues Dokument auf Basis der Vorlage angelegt.

Ob das bei der hier eingesetzten Methode - Documents.Add filename - so abläuft, kann ich im Moment nicht mit Sicherheit sagen, habe kein Testbeispiel zur Hand. Aber wenn es jetzt funktioniert, soll es wohl so richtig sein... ;)

sellspeed
18.07.2006, 14:27
Hallo Ihr beiden,

also nett das Ihr euch soviele Gedanken macht, aber meiner Meinung nach völlig Sinnlos. Nachdem die Vorlage geöffnet wurde speichert Word die Datei als .doc ab.

Anne Berg
18.07.2006, 14:55
völlig sinnlos nenne ich was anderes... :(

Entschuldige bitte, dass ich deinen Thread zugemüllt habe, aber ich wollte verhindern, dass sich da nicht ganz zutreffende Ein- bzw. Vorstellungen unwidersprochen festsetzten. :p

gpswanderer
18.07.2006, 15:30
@Anne
Wir hatten schon die gleiche Ansicht bzw. haben sie noch was .dot und .doc angeht. Habe mich nur etwas missverständlich ausgedrückt.

@sellspeed
weil ich es nicht besser weiß! Sind Deine Worte. Warum schreibst Du dann,aber meiner Meinung nach völlig Sinnlos
wenn sich das ganze um Deine Frage dreht und Du durchaus den Eindruck erweckt hast, dass Du für Erläuterungen dankbar bist. Jedenfalls halte ich Deine Wortwahl nicht für sehr "gelungen".
Für mich ist das Thema hiermit erledigt.

sellspeed
20.07.2006, 13:43
Hallo Ihr beiden,

da war meine Wortwahl wohl "etwas" schlecht gewählt, entschuldigt.
Ich wollte lediglich sagen, Ihr braucht eure Kostbare Zeit nicht in mein Problem zu stecken, denn es ist gelöst.

von mir: Es ist nur Leuten wie Dir zu verdanken das ich überhaupt soweit gekommen bin und tatsächlich eine komplexe auf gesunden Füßen stehende DB habe

Wenn ich so etwas schreibe dann ist doch wohl klar das meine Aussage "sinnlos" einfach mal dumm gewählt war und nicht so gemeint ist oder?

gpswanderer
20.07.2006, 13:55
Hallo,
alles wird Gut :grins:

Herzlichen

Anne Berg
20.07.2006, 14:14
Ich denke mal, in Berlin ist es mindestens genauso heiß wie in NRW und da entschuldigt man doch (bitte gegenseitig) fast alles... :D