powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Поиск значения и замена его на значение из предыдущей записи
20 сообщений из 20, страница 1 из 1
Поиск значения и замена его на значение из предыдущей записи
    #32590374
DbIM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые, буду рад услышать что-нибудь в помощь по следующему вопросу:
имеется таблица
2 поля
одно - индексируемое время (Date,General Date)
другое - данные (Number, Double)
пример:
18/05/2004 11:26 123
18/05/2004 11:27 2000
18/05/2004 11:28 234
необходимо (желательно с помощью запроса) найти определенное значение (например 2000) и заменить его на значение из предыдущей записи (в данном примере 123)
искомое значение может встречаться несколько раз. Бьюсь долго, но видимо знаний не хватает (как и времени, необходимого на их приобретение)) )
Спасибо!
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590376
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запросом работа на последовательности данных всегда гемморойна, если вообще возможно.
Проще через рекордсет
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Public Sub lalala(x As Double)
Dim rst As ADODB.Recordset
Dim y As Double
Set rst = New ADODB.Recordset
rst.Open "table1", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
rst.MoveFirst
While Not rst.EOF
    rst.Find "[Dann]=" & x
    If Not rst.EOF Then
        rst.MovePrevious
        y = rst!Dann
        rst.MoveNext
        rst!Dann = y
        rst.Update
    End If
Wend
End Sub
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590377
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл в конце процедуры:
rst.close
set rst=nothing
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590381
DbIM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дело в том, что я никогда этим не пользовался. Нельзя вкратце где это создать и как запустить.
и где объявляется чему равен х
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590383
DbIM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
правильно ли я понимаю, что надо создать модуль, а потом можно создать к примеру макрос, который будет запускать модуль?
когда я так делаю, то макрос при запуске просто открывает окно редактирования модуля
вот приложено мое творение
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590384
DbIM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
блин
забыл про этот рст.клоуз
но эффекта пока нет
вот код
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590385
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно и просто текст вставлять, зачем рисунком.
Где задавать х - это по вкусу.
К примеру, делаем форму, на ней поле (назовем Поле1), туда и будем вводить значение.
на ней же -кнопочку, в процедуре обработки события нажатия кнопки
напишем
Код: plaintext
Valid Me!Поле1
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590386
DbIM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
это изумительно!
огромное Вам, Alexander G, спасибо!
интересно теперь как это будет работать с 300,000 записей
Будем работать! Удачи!
Был бы рад Вам также чем-нибудь помочь!
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590394
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
300000 -это, конечно, займет время. В этой ситуации для полного счастья я бы вывел бы значок песочных часов на курсоре и индикатор хода выполнения в строке состояния, плюс звуковой сигнал и msgbox по окончании.
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590395
DbIM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
)) пока хватит и этого
в принципе достаточно это делать раз в неделю
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590398
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно все это написать и прямо в процедуре обработки кнопки заменив х на Me!Поле1, чтобы не создавать лишний модуль.
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590399
DbIM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
что-то вот скопировал щас всё это щастье в другую базу
(там где записей 300000)
вроде формат всех данных одинаков
единственное это то, что данные идут с интервалом 5 сек ну и размер.
поменял все названия как надо и что-то после нажатия кнопки выдает Invalid SQL statement: expected SELECT, UPDATE or blah blah
как так....
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590403
DbIM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
блин
вот чудо-юдо
не понимало название талицы с пробелами
ну в принципе и щас не понимает
можно переучить или проще переименовать таблицу?
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590406
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
название - в квадратные скобки "[table 1]"
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590407
DbIM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
супер
а если надо избавиться от пустых значений
valid(что здесь?)
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590417
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
запросом
Код: plaintext
DELETE * FROM [table  1 ] WHERE [table  1 ].pressure Is Null;
можно запустить его в процедуре обработки событий
если сохраненный
Код: plaintext
DoCmd.OpenQuery "мойЗапрос" 
Или
Код: plaintext
Docmd.runsql "DELETE * FROM [table 1] WHERE [table 1].pressure Is Null;"
Он будет спрашивать, что собирается удалять .... записей
(можно это и отключить)

а можно просто
Код: plaintext
currentdb.execute "DELETE * FROM [table 1] WHERE [table 1].pressure Is Null;", dbfailonerror
спрашивать ничего не будет.
Чтобы делал автоматом вставить эту строку в процедуру обработки нажатия кнопки, или в конце valid, дело личное.
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590426
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
или я не понял вопроса, что значит избавится?
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590427
DbIM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да спасибо
я запросом почистил, а дальше в принципе проще
у меня есть промежуточная таблица, без которой всё равно не обойтись, там валидэйшн рул поставил из нот нулл и фиг с ним
некрасиво , но мне надо результат как можно быстрее )

а в Microsoft Graph 2000 есть способ поменять максимальное количество записей, по которым он строит чарт? там 4000 по-моему только
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590437
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на 300000 значений график невозможно, как мне кажется, и смотреть.
Подсовывать в Graph запрос по нужным юзеру интервалам, а при необходимости посмотреть картину за большой интервал показывать сглаженный график подсовывая запрос типа
Код: plaintext
1.
2.
SELECT Hour([table  1 ].DateТimeA) AS IntervalTime, Avg([table  1 ].pressure) AS [Avg-pressure]
FROM [table  1 ]
GROUP BY Hour([table  1 ].DateA);
здесь он группирует по часам, показывая среднее за час.
Реально его нужно усложнить, группируя еще и по дням.
...
Рейтинг: 0 / 0
Поиск значения и замена его на значение из предыдущей записи
    #32590452
DbIM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
благодарю
идея понятна
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Поиск значения и замена его на значение из предыдущей записи
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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