Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1492to1496
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Serienbrief aus Excel erstellen - Speicherprobleme

Serienbrief aus Excel erstellen - Speicherprobleme
29.05.2016 17:07:05
Vera
Hallo zusammen,
ich erstelle gerade in Excel eine Datei zur Abrechnung von unseren Produkten.
Ich möchte gerne auf Knopfdruck den dazugehörigen Serienbrief öffnen und alle Dateien einzeln abspeichern.
Mit etwas Hilfe aus diesem Forum funktioniert das Öffenen und Erzeugen der einzelnen Dateien schon.
Allerdings werden die Dateien nicht gespeichert und es erscheint der Laufzeitfehler 4248 "Dieser Befehl ist nicht verfügbar, weil kein Dokument Datei geöffnet ist".
Ich kann es mir nicht erklären, da die Datei exsistiert und geöffnet ist.
Kennt das Problem jemand oder erkennt den Fehler im Code?
Anbei der Code.
Sub Serienbrief_Test()
Dim Pfad_SB As String
Dim Pfad_Quelle As String
Dim Pfad_SB_speichern As String
Dim Word As Object
Set Word = CreateObject("Word.Application")
Dim SB_Doc As Object
Dim Dateiname As String
Application.ScreenUpdating = False
Application.Visible = False
Pfad_SB = "C:\Desktop\Abrechnung\Rechnungsformular.Docx"
Pfad_Quelle = ThisWorkbook.FullName
Pfad_SB_speichern = "C:\Desktop\Abrechnung\Ablage\"
'Serienbrief öffnen
With Word
.Visible = True
Set SB_Doc = Word.Documents.Open("C:\Desktop\Abrechnung\Rechnungsformular. _
Docx")
'Einzeldokumente speichern
With SB_Doc.MailMerge
'Tabelle auswählen aus denen die Daten gezogen werden sollen
.OpenDataSource Name:=Pfad_Quelle, LinkToSource:=True, Format:=0, SQLStatement:="SELECT *   _
_
FROM `Serienbrief$`"
.Destination = 0
.SuppressBlankLines = True
.DataSource.ActiveRecord = wdFirstRecord
'Einzeldokumente speichern
Do
If .DataSource.ActiveRecord > 0 Then
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
With .DataSource
.FirstRecord = .ActiveRecord
.LastRecord = .ActiveRecord
Dateiname = Pfad_SB_speichern & "Seriendruck" & .ActiveRecord & ".doc"
End With
.Execute Pause:=False
'Ab hier gehts nicht mehr
ActiveDocument.SaveAs Filename:=Dateiname
ActiveDocument.Close False
End If
If .DataSource.ActiveRecord 
Für eure Hilfe vielen Dank schon einmal.

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Serienbrief aus Excel erstellen - Speicherprobleme
31.05.2016 20:32:21
Arthur
Hallo Vera.
... eine Vermutung, falls die Fehlermeldung bei 'ActiveDocument.SaveAs' erscheint:
Du befindest dich in Excel. Angesprochen werden soll das Dokument in Word. Das solltest du Excel mitteilen. Möglicherweise so: Word.ActiveDocument.SaveAs ...
Gruß, Arthur
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige