Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.01.2011, 15:06   #1
savraska
Пользователь
 
Регистрация: 18.04.2010
Сообщений: 37
По умолчанию Создание формы поиска

В общем проблема в следующем, существует запрос на выборку со списком материально-отвественных лиц(МОЛ) по подразделениям. Нужно создать форму поиска МОЛ в заданном подразделении.Моя проблема в том что не знаю как на VBA обращаться к объектам на форме, как с ними работать. До этого был только опыт работы с VBA в Эксель. Заранее спасибо
savraska вне форума Ответить с цитированием
Старый 29.01.2011, 15:25   #2
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

если мне не изменяет склероз то Me.имя_компонента
vovk вне форума Ответить с цитированием
Старый 29.01.2011, 15:29   #3
savraska
Пользователь
 
Регистрация: 18.04.2010
Сообщений: 37
По умолчанию

Me.имя_компонента
Я так понимаю это обращение к компоненту на текущей форме, так? а как к примеру реализовать вставку данных из таблицы? если можете укажите ссылки на статьи, через два дня надо сдать работу, а программирования в аксесс не было.
savraska вне форума Ответить с цитированием
Старый 29.01.2011, 15:52   #4
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

Да я сам всё делал по справке) Информации практически больше нигде нигде не брал, так что ссылки могу дать только найдя их в гугле)) Организовать добавление можно, только я с ходу ответить не смогу) вот если бы в delphi.
В общем извините((
Сейчас ктонибудь из знатоков VBA придут и помогут)
vovk вне форума Ответить с цитированием
Старый 30.01.2011, 02:49   #5
savraska
Пользователь
 
Регистрация: 18.04.2010
Сообщений: 37
По умолчанию

В Delphi я тоже немного поуверенней,там с компонентами все ясно как день...А вот здесь много непонятного,можно ли вообще напрямую работать из формы с таблицей и запросом,Или только через подчиненную форму
savraska вне форума Ответить с цитированием
Старый 30.01.2011, 05:11   #6
savraska
Пользователь
 
Регистрация: 18.04.2010
Сообщений: 37
По умолчанию

Private Sub Выключатель1_Click()
Dim fio As String
Me.ПолеСоСписком9.SetFocus
FD = Me.Поле2.Text

If FD = "" Then Exit Sub ' если пользователь нажал кнопку ОТМЕНА - отказ от поиска


fio = "SELECT [Поиск МОЛ подразделения].ФИО FROM [Поиск МОЛ подразделения] GROUP BY [Поиск МОЛ подразделения].Наименование "

Me.Поле4.Text = fio


End Sub
Я понимаю что это выглядит глупо наверное...
savraska вне форума Ответить с цитированием
Старый 31.01.2011, 07:57   #7
Swatch
Форумчанин
 
Регистрация: 05.07.2009
Сообщений: 209
По умолчанию

Вот пример поиска материала по заданным параметрам. У меня на форме есть поле со списком, который содержит огромный перечень материалов. Для удобства поиска позиции в списке я на форме создала кнопку поиска, которая открывает новое окошка. Там в поле ввожу любой текст, и далее по нажатию кнопки "Найти" осуществляется поиск материалов, в названиях которых этот текст содержится. Затем форма для поиска закрывается и на основной форме раскрывается список с материалами, где выводятся только найденные позиции:
Код:
If Nz(Me.Поле0, "") = "" Then
MsgBox "Не заданы параметры поиска"
Exit Sub
Else
Param = CStr(Me.Поле0)    'параметры поиска
If IsLoaded("КР_КартыРазрешенияФормПодчМат") Then
Set frm = Forms!КР_КартыРазрешенияФормПодчМат
frm.PutNTD = Null
frm.PutNTD.RowSource = "SELECT DISTINCTROW КР_МатериалыПоНТД.Путь, КР_МатериалыПоНТД.Наименование, " & _
"КР_МатериалыПоНТД.Путь, КР_МатериалыПоНТД.Сечение, КР_МатериалыПоНТД.Марка, КР_МатериалыПоНТД.Длина, " & _
"КР_МатериалыПоНТД.Ширина, КР_МатериалыПоНТД.ЕИ FROM КР_МатериалыПоНТД " & _
"WHERE (((КР_МатериалыПоНТД.Путь) Like '1*') and " & _
"((КР_МатериалыПоНТД.Наименование) Like '" & "*" & Param & "*" & "')) " & _
"or (((КР_МатериалыПоНТД.Путь) Like '" & "*" & Param & "*" & "')) ORDER BY КР_МатериалыПоНТД.Путь;"
frm.PutNTD.Requery    ' переформировываю источник данных списка в основной форме
frm.PutNTD.SetFocus
frm.PutNTD.Dropdown
DoCmd.close
End If
End If
А по нажатию "Отмена" я прописывала для списка в основной форме источник данных: весь перечень материалов (тот, что был до поиска)
Может Вам этот пример пригодится.
Swatch вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Преобразование префиксной формы в постфиксную (дерево поиска, рекурсия) FYBVFPFYBC Помощь студентам 0 12.12.2010 05:50
Создание поиска sid1868 БД в Delphi 6 21.10.2010 15:07
создание поиска Cone Microsoft Office Excel 5 05.08.2010 22:05
подгрузка файлов после заполнения формы поиска mamant1 JavaScript, Ajax 0 05.06.2010 04:12
Не могу открыть файлы из формы поиска lexaltd Общие вопросы Delphi 5 31.07.2008 17:21