|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
10.12.2009, 16:28 | #1 |
Регистрация: 10.12.2009
Сообщений: 6
|
процедура на VBA для анализа
здравствуйте!!!
помогите мне пожалучта... необходимо написать процедуру на VBA для анализа верности запроса... что бы эта процедура проверяла вводимые данные..пропускала нужные,т.е выводила на них результат а ненужные отсевала,не предпринимала никаких действий.. если понадобится сама база данных могу выслать... |
10.12.2009, 19:15 | #2 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте Tan'ka.
объясните, что значит "..для анализа верности запроса.." - синтаксис, введенные аргументы, отображаемые данные ? Евгений. |
11.12.2009, 09:12 | #3 |
Регистрация: 10.12.2009
Сообщений: 6
|
что бы проверка шла на вводимые данные...проверка вводимых данных в запрос,и сверять с имеющимися в самой базе
|
11.12.2009, 23:13 | #4 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте Tan'ka.
"на вводимые данные..." - вводимые куда? Подобная конструкция применима только при использовании формы для ввода данных. "сверять с имеющимися..." - если подразумевается проверка на уникальность, можно задать ограничения на поле источника (таблицы) - сделав его индексным + уникальным (Совпадения не допускаются). Но это всё мои версии, Вы как нибудь "поширее" осветите вопрос. Евгений. |
14.12.2009, 09:43 | #5 |
Регистрация: 10.12.2009
Сообщений: 6
|
существуе форма,главная форма,из которой можено по нажатию кнопки открыть либо форму для ввода данных(форма на табл)либо форму на запрос...
при запуске запроса появл окошко с сообщение о том что введите .... после ввода данных в это окошко...нажать ок...и выводится форма запроса... если вводятся,в окошко ввода,данные которые имеются в базе то выводится заполненная форма...если нет,то пустая...а нужно что бы выводилось сообщение об ошибке,или просто не предпринмалось никакиих |
14.12.2009, 19:59 | #6 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте Tan'ka.
простите но я с трудом ориентируюсь в Вашей терминологии, "...форму для ввода данных" - нет вопросов, "(форма на табл)" - форма с подключеной таблицей в качестве источника данных(?), "либо форму на запрос..." - Вы тут не определились нужна форма или запрос или запрос является источником записей формы(?), "..а нужно что бы...не предпринмалось никакиих" - в случае если "то пустая" или если "выводится заполненная форма"? Из всего что я понял (или догадался, буду надеяться верно) следующие рекомендации: Количество записей в источнике подключенном к форме можно узнать из свойства Me.Recordset.Recordcount, если это значение равно нулю (или не равно нулю?), в общем проверяйте свойство и выводите "сообщение об ошибке" или "просто" закрывайте форму. на будущее: объяснение "на пальцах" не дает желаемого результата. Выкладывайте архив с заранее подготовленным (избавленным от переизбыточных данных, OLE объектов,.... и сжатый средствами MS Access) файлом БД, что бы можно было на примере Вашей БД продемонстрировать способы решения задачи. Евгений. Последний раз редактировалось Teslenko_EA; 14.12.2009 в 20:02. |
18.12.2009, 15:14 | #7 |
Регистрация: 10.12.2009
Сообщений: 6
|
спасибо...сделала так:
Private Sub Form_Click() If Me.Recordset.RecordCount > 0 Then DoCmd.OpenForm "форма_запрос_PO_PR", , , , , acDialog Else MsgBox "Нет данных" End If End Sub только вот не пойму...эту процедуру нужно прописывать на событие:нажатие кнопки ок,а как это сделать,веь это окно с просьбой о вводе автоматом сделалось,я это нигде не прописывала..просто сделал запрос.... я пропиывала этот код на собитие:выполнение формы запрос..но тож нечего не происходит... и вообще подскажите пожалуйста,код то примерно правльный=)? |
18.12.2009, 21:09 | #8 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте Tan'ka.
Мне кажется я догадался что значит - "окно с просьбой о вводе автоматом сделалось". Вы создали Запрос с параметрами и пытаетесь применить его в качестве источника, программно не передавая в него "параметры". Но это моё предположение, а дать совет я смогу только проанализировав Вашу конструкцию (БД). Для возможности оказания помощи, выложите архив с заранее подготовленным (избавленным от переизбыточных данных, OLE объектов,.... и сжатый средствами MS Access) файлом БД, без него ... Евгений. |
21.12.2009, 10:10 | #9 |
Регистрация: 10.12.2009
Сообщений: 6
|
вот моя БД....
|
23.12.2009, 00:16 | #10 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте Tan'ka.
Проверку кол-ва записей можно выполнять подобным кодом: Код:
"Нехорошо заставлять" пользователя вводить (вручную(!)) имена и названия, это в принципе не верно, т.к. добавляются к возможным ошибкам, ошибки "Человеческого фактора". думаю Вам стоит заняться изучением структуры и способов применяемых в подобных БД, прежде чем продолжить работу с Вашей конструкцией. Удачи Вам. Евгений. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программа для анализа дисков | artemavd | Софт | 1 | 10.11.2009 13:22 |
Процедура на VBA (Excel) | pafnutic | Microsoft Office Excel | 4 | 02.09.2009 16:29 |
программа для анализа обьявлений | userx | Общие вопросы C/C++ | 2 | 19.06.2009 03:01 |
Группировка значений для анализа | xamillion | Microsoft Office Excel | 33 | 25.05.2009 08:57 |