У меня есть код VBA, который должен экспортировать отфильтрованные данные запроса в Excel. Когда я активирую код через кнопку OnClick, я получаю ошибку: Method pastespecial of worksheet class failed
.Доступ к VBA: метод pastespecial класса рабочего листа не прошел
Я бегу Access 2013 на Windows Server 2012 r2 машина.
УВА код:
Private Sub cbExport_Click()
On Error GoTo Command13_Click_Err
DoCmd.RunCommand acCmdSelectAllRecords
DoCmd.RunCommand acCmdCopy
Dim xlapp As Excel.Application
Set xlapp = CreateObject("Excel.Application")
With xlapp
.Workbooks.Add
.ActiveSheet.PasteSpecial Format:="Text", _
Link:=False, _
DisplayAsIcon:= False
.Cells.Select
.Cells.EntireColumn.AutoFit
.Visible = True
.Range("A1").Select
End With
Command13_Click_Exit:
Exit Sub
Command13_Click_Err:
MsgBox Error$
Resume Command13_Click_Exit
End Sub
Изображение интерфейса:
Кто-нибудь есть идея?
К сожалению, не может видеть изображение - " Этот сайт не может быть достигнут ». Ваши '.Cells.' и' .Range' ссылаются на приложение Excel, а не на рабочий лист, поэтому они вызовут ошибку. Не уверен в PasteSpecial - я привык видеть его в таком формате: 'Paste: = xlPasteValues, Operation: = xlNone, SkipBlanks: = False, Transpose: = False' –
Я думаю, что это бит формата, а также диапазон, где возможно, я попытался с помощью 'ActiveSheet.Range (« a1 »). PasteSpecial xlPasteValues' и отлично, почему бы не использовать CopyFromRecordset вместо этого? –