‘ Добавляем строку заголовков из таблицы:
intRow = 1
For intColumn = 1 To tdfCustomers.Fields.Count
objXLSheet.Worksheets(1).Cells(intRow, intColumn).Value _
= tdfCustomers.Fields(intColumn - 1).Name
Next intColumn
‘ Выделяем первую запись:
intRow = 2
rstCustomers.MoveFirst
Do Until rstCustomers.EOF
For intColumn = 1 To rstCustomers.Fields.Count
objXLSheet.Worksheets(1). _
Cells(intRow, intColumn).Value _
= rstCustomers.Fields(intColumn - 1).Value
Next intColumn
‘ Выделяем следующую запись:
rstCustomers.MoveNext
‘ и увеличиваем счетчик номера строки:
intRow = intRow + 1
Loop
‘ Проверяем, существует ли уже OfficeSolutionsRpt.xls:
If Dir$(strSavedReport) <> "" Then
Kill strSavedReport
End If
‘ Устанавливаем для столбцов подходящую ширину:
objXLSheet.Worksheets(1). _
Cells(1, 1).CurrentRegion.EntireColumn.AutoFit
‘ и сохраняем лист:
strMsg = "Сохраняем объект Excel как файл " _
& strSavedReport & "."
MsgBox prompt:=strMsg, _
Buttons:=vbInformation, Title:= “Сохранение”
objXLSheet.SaveAs strSavedReport
‘ Выключаем "часы ожидания".
ExitMakeXLObject:
DoCmd.Hourglass False
‘Выходим из Excel и очищаем переменную объекта:
objXLSheet.Application.Quit
Set objXLSheet = Nothing
‘ Закрываем Access:
dbSolution.Close
Set dbSolution = Nothing
ws.Close
Set ws = Nothing
If (FindWindowByClass(“Omain”, 0&) <> 0) Then
GetObject(, “Access.Application”).Quit
End If