ich habe ein Problem und in einem anderen Forum konnte mir keiner helfen (keine Antworten auf meine Frage), vielleicht klappt es ja hier.
Vorne Weg, ich weiß das es in diesem Forum schon ähnliche Beiträge gibt, allerdings brachte auch diese bislang nicht den gewünschten Erfolg!!!
Folgendes Problem ist aufgetreten, ich habe in Excel einen Gebührenrechner für die Kanzlei entwickelt, man kann darin bis zu 50 Rechnungen auf einmal schreiben (also als Serienbrief dann). Ich möchte diese Serienbriefe dann auch aus Excel starten können, dazu habe ich folgenden Code:
Private Sub CommandButton4_Click()
Dim oWrd As Object
Dim oDocx As Object
Dim strSheetName As String
strSheetName = "Rechnungsausgabe"
Set oWrd = CreateObject("word.application")
Set oDocx = oWrd.Documents.Open(ThisWorkbook.Path & Application.PathSeparator & "Rechnung.docx") _
oWrd.Visible = True
oDocx.MailMerge.MainDocumentType = wdFormLetters
oDocx.MailMerge.OpenDataSource Name:= _
ThisWorkbook.Path & Application.PathSeparator & "Rechnung.docx", _
ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True, _
AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="", _
WritePasswordDocument:="", WritePasswordTemplate:="", Revert:=False, _
Format:=wdOpenFormatAuto, Connection:= _
"Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=ThisWorkbook.Path & _
Application.PathSeparator & Gebührenrechner.docx.xlsm;Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Engine Type=37;J" _
, SQLStatement:="SELECT * FROM [" & strSheetName & "$]", SQLStatement1 _
:="", SubType:=wdMergeSubTypeAccess
Set oDocx = Nothing
Set oWrd = Nothing
End Sub
Problem 1 hierbei ist, dass die Datenquelle nicht nicht mit eingelesen wird (ich weiß aber das dies geht, nur nicht wie); Problem 2: ich bekomme immer die Meldung "Laufzeitfehler 9105, Die Zeichenfolge ist länger als 255 Zeichen".Weiß jemand wie diese beiden Probleme noch lösen kann?
Viele Grüße
Basti
P.S. es wichtig das dies direkt aus Excel raus voll geht.