Форумы HiProg.com - MS ACCESS, VBA, VB

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

ник: Lvm
Можно сделать что-то типа этого:

Dim Db As Database
Dim Rs As Recordset
Dim Itog As Long
Set Db = CurrentDb
Set Rs = Db.OpenRecordset("SELECT DISTINCT Компания FROM Tabl", dbOpenDynaset)
Rs.MoveFirst
Do Until Rs.EOF
Set Rs1 = Db.OpenRecordset("SELECT * FROM Tabl WHERE Компания=""" & Rs.[Компания] & """ ORDER BY Дата", dbOpenDynaset)
Rs1.MoveFirst
Do Until Rs1.EOF
Itog = Itog + Rs1.[Сумма]
Rs1.[Итог] = Itog
... Ну, и другие расчеты ...
Rs1.Update
Rs1.MoveNext
Loop
Rs1.Close
Rs.MoveNext
Loop
Rs.Close
Db.Close

Это конечно не SQL, но зато никакой рекурсии - последовательное обращение к записям.
Даже 10 тыс. записей должны посчитаться довольно быстро.

ADO не юзаю, уж извиняйте...


Ваше имя:

Пароль:

Цитировать: [quote][/quote] Код: [code][/code]
Жирный: [b][/b] Наклонный: [i][/i]
URL: [url][/url] 

Сообщение:

 Размер файла не более 50 Кбт. Большие файлы можно размещать на www.slil.ru

Прикрепить:

 

Для вставки смайлов в текст щелкните по значку.