Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Два цикла / 6 сообщений из 6, страница 1 из 1
07.12.2004, 17:41:38
    #32817256
Мудрый клён
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Два цикла
Господа!
Ниже описанный код работает. но технологически это
неправильно.
Сам думаю что надо использовать For Each...Next в одном из циклов.

Кто силен в циклах, прошу подкорректировать.
Благодарю за участие!

Dim dbs As DAO.DataBase
Dim rs As DAO.Recordset
Dim rst As DAO.Recordset

Set dbs =CurrentDB

Set rs = dbs.OpenRecordset("SELECT InsDelete.TableUd FROM InsDelete GROUP BY InsDelete.TableUd HAVING ((Not (InsDelete.TableUd) Is Null))")

Do While Not rs.EOF
Set rst = dbs.OpenRecordset("SELECT [40Delete_" & rs.Fields(0) & "].FilialKod" & KodFilial & " FROM 40Delete_" & rs.Fields(0) & " GROUP BY [40Delete_" & rs.Fields(0) & "].FilialKod" & KodFilial & " HAVING ((Not ([40Delete_" & rs.Fields(0) & "].FilialKod" & KodFilial & ") Is Null))")

Do While Not rst.EOF
dbs.Execute ("DELETE " & rs.Fields(0) & ".FilialKod" & KodFilial & " FROM " & rs.Fields(0) & " WHERE (((" & rs.Fields(0) & ".FilialKod" & KodFilial & ")=" & rst.Fields(0) & "))"), dbFailOnError
rst.MoveNext
Loop

rst.Close
rs.MoveNext
Loop
rs.Close

Set rs = nothing
Set rst = nothing
...
Рейтинг: 0 / 0
07.12.2004, 18:08:49
    #32817330
Kelme
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Два цикла
да вроде For each будет медленней, да и в этой ситуации он работать не будет.

s = rs.Fields(0)

и везде вместо rs.Fields(0) используй s

децл быстрее будет.
...
Рейтинг: 0 / 0
07.12.2004, 19:55:15
    #32817470
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Два цикла
Если по логике надо делать movenext, то надо делать. Никакой for each этого не заменит. Разве только если пройти по рекордсету и загрузить его в массив.
...
Рейтинг: 0 / 0
07.12.2004, 20:10:27
    #32817478
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Два цикла
Kelmeдецл быстрее будет.
Оффтоп: а зачем нам быстрый Децл?
...
Рейтинг: 0 / 0
07.12.2004, 20:57:22
    #32817505
Alexey Sh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Два цикла
Владимир СанычЕсли по логике надо делать movenext, то надо делать. Никакой for each этого не заменит. Разве только если пройти по рекордсету и загрузить его в массив.
а зачем ходить? сразу в массив при помощи Getrows()
...
Рейтинг: 0 / 0
08.12.2004, 10:53:53
    #32818062
Kelme
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Два цикла
Темный Kelmeдецл быстрее будет.
Оффтоп: а зачем нам быстрый Децл?

не знаю как у вас в России Матушке, а у нас это означает также и "чуть-чуть"
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Два цикла / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]