2016-10-24 1 views
-1

Может ли кто-нибудь указать на то, что я делаю неправильно. Я пытаюсь вывести отчет Access 2007 в Word (используя .rtf!), Но я, похоже, не могу указать мой код в файле. Я продолжаю получать ошибки несоответствия типа.
Вот мой код:Создание и открытие документа Word с использованием Access 2007 VBA

Private Sub CatalogTitle_Click() 
Dim AppWord As Object 
Dim Doc As Object 
Dim FileName As String 
Dim DateTime As Date 
Dim DTString As String 
Dim x As Integer 


Set AppWord = CreateObject(Class:="Word.Application") ' create an instance  of Word 

DateTime = Now()    ' build a date string which is compatible with the Windows File structure 
DTString = CStr(DateTime) 

For x = 1 To Len(DTString) ' changes dd/mm/yy hh:mm:ss into dd_mm_yy hh_mm_ss 
    If (Mid(DTString, x, 1) = "/" Or Mid(DTString, x, 1) = ":") Then 
     Mid(DTString, x, 1) = "_" 
    End If 
Next x 

' build the full .rtf filename 
FileName = "Titles " & DTString & ".rtf" 

' and output the rtf file to it 
DoCmd.OutputTo acReport, "ItemsReportByTitle", acFormatRTF, FileName 

' then open the Word instance with the file just created 
Set Doc = "AppWord.Documents.Open(FileName)" 

' and make the instance visible 
AppWord.Visible = True 

End Sub 

Я держу неудачу на "Set Doc ... линия.

ответ

0

Удалить двойные кавычки объекта/метод ...

Set Doc = AppWord.Documents.Open(FileName) 
+0

Wow! Это имело огромное значение. Спасибо! – Solong

+0

Да - вы назначали строку, которая не работает с 'Set ='. 'Установить Doc =" xyz "' было бы точно так же с точки зрения компиляторов. - Если ответ решил вашу проблему, вы можете [принять] (http://stackoverflow.com/help/someone-answers), это также отмечает вопрос как разрешенный. @Так долго – Andre