2014-11-11 3 views
1

Это УВА команда, которую я использую, чтобы сделать таблицу и сохраните его:команду для отображения Excel после сохранения

DoCmd.TransferSpreadsheet acExport, «query_alldata1», «C: \ All_Data_2014.xlsx», True

Я также хочу, чтобы он автоматически открывался или отображался на экране. Буду признателен за любое руководство.

Это как мой subroutin выглядит следующим образом:

Private Sub btnAlldatagen_Click() 
On Error GoTo Err_btnAlldatagen_Click 
Dim stDocName As String 

stDocName = "query_alldata1" 

DoCmd.TransferSpreadsheet acExport, , "query_alldata1", "C:\All_Data_2014.xlsx", True 


'Workbooks.Open "C:\All_Data_2014.xls" 
MsgBox ("Preparing all Data Report") 
Exit_btnAlldatagen_Click: 
Exit Sub 
Err_btnAlldatagen_Click: 
MsgBox Err.Description 
Resume Exit_btnAlldatagen_Click 

End Sub 

Я использую команду Workbooks.open но не открывает таблицу.

+0

tnx, но это не помогает ... –

ответ

2

О, этот простой.

После

DoCmd.TransferSpreadsheet acExport, , "query_alldata1", "C:\All_Data_2014.xlsx", True 

Место:

Dim xl As Object 
Set xl = CreateObject("Excel.Application") 

With xl 
    .Visible = True 
    .Workbooks.Open ("C:\All_Data_2014.xlsx") 
    '.Do other things with excel here 

    '.Workbooks("Test1.xlsm").Close , False '<-- Uncomment to close workbook 
    '.Quit '<-- Uncomment to close Excel 
End With 

'Set xl = Nothing <-- Uncomment to set Excel to Nothing 
+0

Также стоит попробовать 'Set xl = GetObject (" C: \ All_Data_2014.xlsx ")'. Это будет использовать существующий экземпляр excel, если он есть. –

1

Вы можете добавить ссылку на библиотеку времени выполнения Excel (Microsoft Excel * Library Object), и работать с Excel VBA.

Dim xlApp as Excel.Application 
Set xlApp = New Excel.Application 

xlApp.Workbooks.Open("C:\All_Data_2014.xlsx") 
xlApp.Visible 

Set xlApp = Nothing 

Если вы планируете делать это несколько раз, вы должны убедиться в том, чтобы создать переменную xlApp один раз в начале вашего кода, начиная с открытия Excel медленно.

Смежные вопросы