Hallo ich habe folgendes Problem und Google konnte mir bis jetzt nicht helfen: Ich habe eine Access2007 Datenbank mit Name Test. Dort ist das Kombinationsfeld24. Den Wert der in diesem Kombinationsfeld möchte ich per Knopfdruck (Button in diesem Formular) an eine bestimmte Stelle in ein Worddokument einfügen. Ich habe etwas von einer Textmarke, die ich bei Word einfügen soll gelesen, dies funktioniert aber warum auch immer nicht richtig. das Worddokument ist gespeichert unter C:\temp\test.docx Kann mir jemand helfen? Den Code nennen und was ich in Word machen muß?
Private Sub Befehl102_Click() Dim objWord As Word.Application Set objWord = CreateObject("Word.Application") With objWord .Visible = True .Documents.Open ("C:\temp\test.doc") 'das zu öffnende Worddokument .ActiveDocument.Bookmarks("test").Select 'gehe zur Textmarke "Anrede" .Selection.text = Me!Kombinationsfeld24 'schreibe in das Feld, was im Formular im Feld Anrede steht End With objWord.ActiveDocument.PrintOut 'ausdrucken objWord.ActiveDocument.Close SaveChanges:=wdDoNotSaveChanges 'nicht speichern objWord.Quit Set objWord = Nothing dieses habe ich in den Code des Befehlsbuttons geschrieben. In der Worddatei habe ich eine leere Zeile angeklickt -> Einfügen -> Textmarke -> dort test eingegeben und auf hinzufügen. gespeichert und geshclossen. Es funktioniert aber nicht.Was mache ich falsch?
Was Du falsch machst? Ich würde sagen, dass Du mal hier die Fehlermeldung hin schreibst und nicht "Es funktioniert aber nicht" Im ersten Beitrag funktioniert es nicht "richtig". Was denn jetzt?
es passiert nichts, es erscheint keine Fehlermeldung, nichts wird im Worddokument geschrieben
Wie? Da kommt nichts? Das ist dann nicht so einfach. - Noch im Entwurfsmodus? - Fehlermeldungen ignoriert? ("On Error Resume Next" o.ä.) Ich gehe, bei Problemen, immer nur von der Ziel-Software aus. Hier also Word2007. Wenn ich Deinen Code von oben in Word eingebe, dann wird mir die Textmarke gelöscht! Eventuell das Word-Dokument mit gelöschter Textmarke gespeichert? Mein kurzer Test sieht in Word so aus:
1 | 1. Private Sub CommandButton1_Click() |
2 | 2. Dim a As String |
3 | 3. a = InputBox("Zusatz eingeben") |
4 | 4. ActiveDocument.Bookmarks("test").Select |
5 | 5. Selection.Text = "Hier der geänderte Text " & a & vbCrLf |
6 | 6. End Sub |
Das funktioniert genau ein mal. Danach muss die Textmarke wieder hinzugefügt werden. Nach der 5. Zeile dann ein
1 | ActiveDocument.Bookmarks.Add Range:=Selection.Range, Name:="test" |
würde dann die Textmarke wieder herstellen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.