ник: Scorpi
Есть кнопочка для копирования Excel выбранных данных:
Dim xlApp As Object
Dim xlBook As Object
Dim sql As String
Dim RecSet As DAO.Recordset
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Add("\\Main\common\...\sh_sp.xlt")
usl = sql_usl()
sql = "SELECT kod_poz, numb_pp, kod, numb_ch, name_m, oboz, ei, kolvo, post, prim, cherteg, name_ch, dat_d, numb_izm FROM specific where " & usl & " and priz=1 order by cherteg "
Set RecSet = CurrentDb.OpenRecordset(sql, dbOpenSnapshot)
Me!Поле20.Value = sql
xlBook.Worksheets(1).Range("A2").CopyFromRecordset RecSet
xlBook.SaveAs FileName:="\\Main\common\...\sh_sp1.xls", FileFormat:=xlNormal _
, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
xlApp.Visible = True
RecSet.Close: Set RecSet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing
sql_usl() - процедурка проверяет списки и составляет условие для выборки. Зарос формируется правильно. Для большей части данных работает, а вот в одном месте выдал ошибку: "Run-time '-2147467259 (80004005) Method 'CopyFromRecirdset' of object 'Range' failed'", когда для объекта Список RowSource приравниваю к формируемому sql, то в списке отображается все правильно, а вот копировать не хочет и это только при одном наборе условий, больше не сталкивалась. Проверяла данные внешне ничем не отллличаются от тех, для которых копирование проходит хорошо.
Прикрепила кусочек базы, для всех хорошо работает кроме Подобъекта "011".