Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 23.11.2012
Сообщений: 5

вба в аксессе

18.03.2014, 17:18. Показов 967. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, надеюсь хоть немного подскажете в каком направлении искать или смотреть , у меня есть таблица
и вба у меня сделан ее перебор , я не могу понять и уже много времени искал ,как из вба отобранные строки отобразить в подчиненной форме, все это в бд аксесс , если я не туда оформил прошу прощения, за любую подсказку огромное спасибо
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.03.2014, 17:18
Ответы с готовыми решениями:

2 запроса в аксессе
Здравствуйте. Понимаю, что само задание примитивно до ужаса, но, так как до этого вообще никогда не работал в Access'е, то возникли...

Формулы в аксессе
Добрый день! Подскажите следующее: только начал работать с Access в режиме самообучения, необходимо в мою текущую базу данных через...

Связи в аксессе
Здравствуйте, у меня есть база данных, в которой есть несколько таблиц со связями, все они хорошо работают но связь табл. Группа -...

9
3357 / 1776 / 83
Регистрация: 05.08.2010
Сообщений: 4,471
18.03.2014, 17:20
Цитата Сообщение от Shutter Посмотреть сообщение
и вба у меня сделан ее перебор , я не могу понять и уже много времени искал ,как из вба отобранные строки отобразить в подчиненной форме
Рекордсетом в смысле?
А почему не используете старый добрый способ, баунд формы, мастером?
Ну или запрос использовать..
0
0 / 0 / 0
Регистрация: 23.11.2012
Сообщений: 5
18.03.2014, 17:33  [ТС]
Да сделано рекордсетом, я пробовал делать через запрос и другими способами , но у меня вышло то что я хотел , тут же я получил желаемый результат, но столкнулся с проблемой как это удобно вывести , в идеале у меня есть таблица из 20 строк а после перебора остается 3 и я их так же должен отобразить в виде таблицы. Но таковых функция я не нашел , хотя бы наводку я был бы рад и благодарен
0
3357 / 1776 / 83
Регистрация: 05.08.2010
Сообщений: 4,471
18.03.2014, 17:43
Ну, Вы бы выложили то что есть(что относится к вопросу), тогда легче было бы понять, что Вы делаете.
0
0 / 0 / 0
Регистрация: 23.11.2012
Сообщений: 5
18.03.2014, 18:30  [ТС]
Крайне некрасивый код , простите но он работает верно и так как мне надо, вот его вид:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
Sub tets()
 
Dim db As Database
Dim rs As DAO.Recordset
Dim n As Integer, c As Integer
Dim i As Integer, j As Integer
Dim max As Integer, min As Integer
Dim norm As Integer
 
n = 29
c = 2
 
Set db = DBEngine.Workspaces(0).Databases(0)
Set rs = db.OpenRecordset("Запрос5")
 
rs.MoveFirst
 
Do While (Not rs.EOF)
 
If rs.Fields(13).Value <> Empty Then
 
For i = 13 To n
max = 0
min = 1000
    For j = 0 To c
    If rs.Fields(i + j).Value > max Then
        max = rs.Fields(i + j).Value
    End If
    If rs.Fields(i + j).Value < min Then
        min = rs.Fields(i + j).Value
    End If
    norm = 0
    Next j
If rs.Fields(i + 3).Value <> Null Then
    If rs.Fields(i + 3).Value > max Then
        max = rs.Fields(i + 3).Value
    End If
    If rs.Fields(i + 3).Value < min Then
        min = rs.Fields(i + 3).Value
    End If
End If
d = rs.Fields(1).Value
If rs.Fields(i + j).Value <> Empty Then
    norm = ((max - min) / max) * 100
End If
i = i + 3
If norm > 10 Then
        MsgBox rs.Fields(1).Value
        rs.MoveNext
        i = 12
End If
Next i
 
End If
 
rs.MoveNext
 
Loop
End Sub
0
Эксперт MS Access
 Аватар для ltv_1953
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
18.03.2014, 18:33
Цитата Сообщение от Shutter Посмотреть сообщение
в идеале у меня есть таблица из 20 строк а после перебора остается 3 и я их так же должен отобразить в виде таблицы
Добавьте в таблицу поле (логическое) Выбрана и в переборе ставьте в это поле для 3 выбранных True, False для остальных. Тогда для формы источник строк - запрос с выбранными из таблицы записями по условию Выбрана.
0
0 / 0 / 0
Регистрация: 23.11.2012
Сообщений: 5
18.03.2014, 18:44  [ТС]
Цитата Сообщение от ltv_1953 Посмотреть сообщение
Добавьте в таблицу поле (логическое) Выбрана и в переборе ставьте в это поле для 3 выбранных True, False для остальных. Тогда для формы источник строк - запрос с выбранными из таблицы записями по условию Выбрана.
Извините, я это написал как пример , что от меня хотят, строк у меня куда больше и в результате получится их много , простите что так неверно отобразил свою мысль
0
Эксперт MS Access
 Аватар для ltv_1953
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
18.03.2014, 19:56
Судя по коду Вы MsgBox rs.Fields(1).Value Вы выводите значения Fields(1) для тех записей, которые удовлетворяют условиям. Я предложил Вам добавить в таблицу (из которой Fields(1) набора) дополнительное поле для отмечания тех записей, которые удовлетворяют условиям. Какая разница, сколько их будет. Выбираете нужные записи в источник записей формы по этому полю и все.
Другой вариант - вместо MsgBox rs.Fields(1).Value делаете добавление rs.Fields(1).Value (назовем это поле Код, предполагаем, что оно ключевое) в дополнительную таблицу и в источнике записей формы для вывода отобранных записей добавляете условие Код In (Select Код From Дополнительная таблица).
1
0 / 0 / 0
Регистрация: 23.11.2012
Сообщений: 5
18.03.2014, 20:14  [ТС]
Цитата Сообщение от ltv_1953 Посмотреть сообщение
Судя по коду Вы MsgBox rs.Fields(1).Value Вы выводите значения Fields(1) для тех записей, которые удовлетворяют условиям. Я предложил Вам добавить в таблицу (из которой Fields(1) набора) дополнительное поле для отмечания тех записей, которые удовлетворяют условиям. Какая разница, сколько их будет. Выбираете нужные записи в источник записей формы по этому полю и все.
Другой вариант - вместо MsgBox rs.Fields(1).Value делаете добавление rs.Fields(1).Value (назовем это поле Код, предполагаем, что оно ключевое) в дополнительную таблицу и в источнике записей формы для вывода отобранных записей добавляете условие Код In (Select Код From Дополнительная таблица).
спасибо большое, буду пробовать
0
163 / 27 / 1
Регистрация: 09.06.2008
Сообщений: 50
19.03.2014, 10:15
Цитата Сообщение от Shutter Посмотреть сообщение
как из вба отобранные строки отобразить в подчиненной форме
А может поясните, какие строки в Вашем рекордсете Вы считаете отобранными?
Лично я из Вашего кода понял только то, что Вы нашли min, max и norm. Причем каким-то совершенно хитрым способом.
Чтобы строки вывести в форме, все вычисления нужно проводить в запросе. Если возможностей SQL не достаточно, пишутся функции, в которые передаются нужные параметры и получаются нужные расчетные значения. После чего, эти функции используются в запросе.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.03.2014, 10:15
Помогаю со студенческими работами здесь

Оценка товара в аксессе
Ребята, пожалуйста, выручайте, мне необходимо, чтобы на форме, где отображаются товары была кнопка ОЦЕНИТЬ. Необходимо,когда покупатель...

Создание формы в Аксессе
Добрый вечер! Столннулся с такой проблемой: Задача создать платежное поручение в Access (в документе &quot;ПЛАТЕЖНОЕ ПОРУЧЕНИЕ&quot;...

Работа с датами в Аксессе.
Задача следующая. Есть столбец, формата Дата/время. В нем хранится время начала работы. Дальше на каждый вид работы есть...

создать БД в аксессе 2003.
не получается создать БД=(. не могу составить схему данных=(.

сделать задания в аксессе
1. Для базы данных «Автомагазин» создать запрос по таблице «Модели автомобилей», для отображения розничной цены на каждый автомобиль,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru