можа кто знает как ускорить сброс данных в excel из базы данных, а то 300 записей сбрасываются 20 сек., а если их тама будет 10000 - ждать 11 минут.
код такой:
Set oEx = CreateObject("excel.application")
With oEx
.Visible = False
.workbooks.Add
.Range("A1").Select
.ActiveCell.Cells = "Èíâåíòàðèçàöèîííàÿ îïèñü"
.Range("A2").Select
.ActiveCell.Cells = "Àðòèêóë"
.Range("B2").Select
.ActiveCell.Cells = "Íàèìåíîâàíèå"
.Range("C2").Select
.ActiveCell.Cells = "Êîëè÷åñòâî"
.Range("D2").Select
.ActiveCell.Cells = "Ëîò"
.Range("E2").Select
.ActiveCell.Cells = "Ñðîê ãîäíîñòè"
.Range("F2").Select
.ActiveCell.Cells = "Àäðåñ ìåñòà"
.Range("G2").Select
.ActiveCell.Cells = "¹ ïàëëåòû"
RS.MoveFirst
PBar.MaxValue = RS.RecordCount
Do Until RS.EOF
n = n + 1
artold = RS.Fields(0)
aname = RS.Fields(1)
kol = RS.Fields(2)
part = RS.Fields(3)
srok = RS.Fields(4)
adres = RS.Fields(5)
numpal = RS.Fields(6)
.Range("A" & n).Select
.ActiveCell.Cells = artold
.Range("B" & n).Select
.ActiveCell.Cells = aname
.Range("C" & n).Select
.ActiveCell.Cells = kol
.Range("D" & n).Select
.ActiveCell.Cells = part
.Range("E" & n).Select
.ActiveCell.Cells = srok
.Range("F" & n).Select
.ActiveCell.Cells = adres
.Range("G" & n).Select
.ActiveCell.Cells = numpal
PBar.Value = PBar.Value + 1
RS.MoveNext
Loop
.Range("A1:G1").Select
.Selection.Merge
.Selection.HorizontalAlignment = 3
.Selection.VerticalAlignment = 3
.Columns("A:G").EntireColumn.AutoFit
.Range("A2:G2").Select
.Selection.HorizontalAlignment = 3
.Selection.VerticalAlignment = 3
.Range("A1").Select
.Visible = True
.WindowState = 3
End With
DBC
PBar.Clear
где:
RS-открытый рекордсорс
PBar - прогресбар
DBC-функция которая закрывает базу
зарание спасибо