powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Братья помогите, а то я спячу
8 сообщений из 8, страница 1 из 1
Братья помогите, а то я спячу
    #39253147
vasjaspb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть таблица «вход» нужно превратить ее в табличку «выход». Дорогие форумчане, помогите с кодом VBA чтобы, заполнить диапазон строк названием улицы из верхней строки, до строки с другой улицей, и т.д. Таблицы здоровущие, в 5-7 тысяч строк. Очень прошу.
...
Рейтинг: 0 / 0
Братья помогите, а то я спячу
    #39253149
vasjaspb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Файл не прилепился
...
Рейтинг: 0 / 0
Братья помогите, а то я спячу
    #39253284
vasjaspb, потестируйте такой код
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Dim DB As DAO.Database, RSI As DAO.Recordset, RSO As DAO.Recordset
Dim sq$, ul
  Set DB = CurrentDb
  DB.Execute "DELETE * FROM выход"
  sq = "SELECT * FROM вход ORDER BY КЛЮЧ"
  Set RSI = DB.OpenRecordset(sq, dbOpenSnapshot)
  sq = "SELECT * FROM выход"
  Set RSO = DB.OpenRecordset(sq, dbOpenDynaset)
  ul = Null
  Do Until RSI.EOF
    If Not IsNull(RSI!УЛИЦА) Then ul = RSI!УЛИЦА
    If Not (IsNull(RSI!ДОМ) Or IsNull(ul)) Then
      RSO.AddNew
      RSO!КЛЮЧ = RSI!КЛЮЧ: RSO!УЛИЦА = ul: RSO!ДОМ = RSI!ДОМ
      RSO.Update
    End If
    RSI.MoveNext
  Loop
  RSI.Close: RSO.Close
  Set RSI = Nothing: Set RSO = Nothing: Set DB = Nothing
...
Рейтинг: 0 / 0
Братья помогите, а то я спячу
    #39253694
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vasjaspb,

Обязательно кодом VBA?
А если запросом заполнить таблицу ВЫХОД?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
INSERT INTO ВЫХОД (КЛЮЧ,УЛИЦА,ДОМ)
SELECT КЛЮЧ, 
       IIf(УЛИЦА Is Null, 
           DLookUp("УЛИЦА","ВХОД","Not УЛИЦА Is NUll AND КЛЮЧ=" & Nz(DMax("КЛЮЧ","ВХОД","Not УЛИЦА Is NUll AND КЛЮЧ<" & КЛЮЧ),0)),
           УЛИЦА] AS U, 
       ДОМ
FROM ВХОД
ORDER BY КЛЮЧ;
...
Рейтинг: 0 / 0
Братья помогите, а то я спячу
    #39253753
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот так, может, побыстрее будет.
И отсев записей с пустым ДОМ еще добавлен.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
INSERT INTO ВЫХОД (КЛЮЧ, УЛИЦА, ДОМ)
SELECT T.КЛЮЧ AS КЛЮЧ, 
       IIf(УЛИЦА Is Null,
          (SELECT УЛИЦА FROM ВХОД WHERE Not УЛИЦА Is NUll AND КЛЮЧ=Nz((SELECT Max(КЛЮЧ) FROM ВХОД WHERE Not УЛИЦА Is NUll AND КЛЮЧ<T.КЛЮЧ),0)),
          УЛИЦА), 
       T.ДОМ AS ДОМ
FROM ВХОД AS T
WHERE Not T.ДОМ Is Null
ORDER BY T.КЛЮЧ;
...
Рейтинг: 0 / 0
Братья помогите, а то я спячу
    #39253888
vasjaspb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Практикант и Мишель! Я вот уже пять минут сижу с выпученными глазами. Меня одновременно переполняют чувства - удивления, восторга, благодарности и уважения. Оба способа отлично работают, по крайней мере на моем примере. Это какое то волшебство. Благодарю Вас от всей души, желаю Вам всяческих благ и творческих успехов. Вы мне очень помогли. Крепко жму руки.
...
Рейтинг: 0 / 0
Братья помогите, а то я спячу
    #39253893
vasjaspb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-Практикант-, благодарю, работает! )
...
Рейтинг: 0 / 0
Братья помогите, а то я спячу
    #39253894
vasjaspb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__Michelle, Благодарю, работает! )
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Братья помогите, а то я спячу
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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