powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Два цикла
6 сообщений из 6, страница 1 из 1
Два цикла
    #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
Два цикла
    #32817330
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да вроде For each будет медленней, да и в этой ситуации он работать не будет.

s = rs.Fields(0)

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

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

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


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