Как сделать форму поиска в access

Как сделать форму поиска в access?

Поле со списком в access может стать полем для поиска. Поисковое поле со списком в Access может сильно облегчить вам работу с данными.

Существует несколько способов создания поискового поля, самый распространённый из них – при помощи мастера для элемента управления «Поле со списком».

Рассмотрим способ создания поля для поиска вручную. В режиме конструктора формы добавим свободное поле в примечание формы (кнопка «Мастера» должна быть отжата):

Зададим следующие свойства для свободного поля «ПолеПоиск» (для этого надо выделить его в режиме конструктора и нажать клавишу F4):

Перейдём на вкладку «Данные» свойств поля со списком. Значения свойства «Данные» оставим пустым. В «Источнике строк» мы выбираем подстановку из поля «ФИО» базового запроса «зап_СписокДляФормы» (этот же запрос «даёт» данные для текущей формы и поле «ФИО» запроса является базовым для поля «ФИО» формы). Свойства «Ограничиться списком», «Автоподстановка» и «Доступ» принимают значение «да».

На вкладке «События» определяем для свойства «После обновления» макрос «МакросПоиск».

Макрос состоит всего из двух команд:

Форма с полем для поиска готова. Для того, чтобы найти нужную нам запись с конкретным человеком, надо щёлкнуть мышкой внутри поля поиска. Потом можно вводить фамилию, имя и отчество.

По мере введения символов программа будет автоматически предлагать подходящие записи. Когда выбрана нужная запись, можно нажать клавишу «Enter» или «Tab». Курсор будет автоматически переведён в область данных формы на нужную запись.

Теперь нажимаем «Enter» или «Tab» и фокус ввода перейдёт на нужную нам запись в область данных формы:

Типичной задачей является организация более удобного чем последовательный перебор перехода по записям в форме, задавая значения каких-то полей записи, для ее поиска по ним. Например, в форме с информацией для большого количества сотрудников хотелось бы быстро перейти к карточке сотрудника с известной фамилией. Это можно сделать с помощью специального списка для выбора фамилии.

В разд. «Создание элементов управления с помощью панели элементов»гл. 5 мы упомянули о том, что при создании списка/поля со списком с помощью Мастера в форме, привязанной к источнику данных, Access предлагает сделать его средством перехода к нужной записи в форме. Рассмотрим пример создания такого списка:

  1. Откройте в режиме Конструктора форму «Сотрудники» (Employees) базы данных «Борей» (Northwind).
  2. Убедитесь, что на панели инструментов Панель элементов (Toolbox) нажата кнопка Мастера (Control Wizards). Нажмите кнопку Поле со списком (Combo Box) и разместите новый элемент в разделе заголовка формы, начертив мышью прямоугольник нужного размера.
  3. Появится первое диалоговое окно Мастера списков. Выберите переключатель Поиск записи в форме на основе значения, которое содержит поле со списком (Find a record on my form based on the value I selected in my combo box) и нажмите кнопку Далее (Next).
  4. В следующем диалоговом окне мастера выберите поля, которые образуют столбцы элементов списка: «КодСотрудника» (EmployeeID), «Фамилия» (LastName) и «Имя» (FirstName). Нажмите кнопку Далее (Next).
  5. В следующем диалоговом окне Мастера списков предлагается настроить ширину столбцов списка. Столбец с ключевым полем «КодСотрудника» рекомендуется сделать скрытым (установите флажок Скрыть ключевой столбец (Hide key column)). Оставьте предложенные параметры и нажмите кнопку Далее (Next).
  6. В последнем диалоговом окне мастера требуется ввести текст метки, поясняющей назначение списка. Введите текст: Фамилия: и нажмите кнопку Готово (Finish).

Форма готова. Откройте ее в режиме Формы и убедитесь, что при выборе желаемых фамилии и имени в созданном поле со списком осуществляется переход к информации об этом сотруднике. Такое поле со списком удобно и тем, что значение в нем можно не только выбрать, но и просто ввести первые буквы фамилии — необходимый элемент будет выбран автоматически. Останется нажать клавишу , чтобы отобразить информацию о выбранном сотруднике.

Действие созданного поля со списком обеспечивается процедурой обработки события После обновления (After Update), сгенерированной мастером (см. также разд. «Создание процедур обработки событий»гл. 13).

Создадим двумя способами кнопку «Поиск фамилии» для быстрого поиска покупателя по фамилии в форме “Покупатель”. Первый способ – использование стандартных возможностей Access . Второй способ – использование макроса.

Использование стандартных возможностей Access

Откроем форму «Покупатель» в режиме конструктора. С панели элементов перенесем пиктограмму Кнопка в нижнюю часть формы. Будет вызван мастер Создание кнопки. Выберем режимы Категории: Переходы по записями, Действия: Найти запись. Затем на кнопке разместим текст «Поиск фамилии», введя соответствующий текст в поле Текст. Далее в качестве названия кнопки введем ФИО. При работе с формой “Покупатель” при нажатии кнопки будет вызываться окно стандартного поиска и замены Access.

Замечание. Если не запускается мастер создания кнопок, его надо включить на панели инструментов.

В результате на форме появится кнопка «Поиск фамилии», при нажатии на которую выскакивает стандартное окно «Поиск и замена». При поиске кроме образца надо указать поле, в котором необходимо найти данные, а также указать степень совпадения.

Использование макроса

Для примера создадим подобную кнопку поиска для формы «Товар». Создадим поле для ввода начала названия товара. Откроем эту форму в режиме конструктора и перетащим туда пиктограмму Поле в нижнюю часть формы. Вызовем список свойств правой части поля (первоначально оно имеет обозначение Свободный) щелчком правой кнопки мыши и заменим Имя на Поиск – данное имя в дальнейшем будет использоваться. В строке состояния (свойство Текст строки состояния) введем текст: «Введите название товара или его первые буквы». Вызовем список свойств для левой части Поля (Надписи) и заменим Подпись также на Поиск. Закроем форму.

Дальше создадим макрос «Поиск». Он будет состоять из трех макрокоманд. Откроем вкладку Созданиенажмем кнопку Макрос. С помощью команд панели инструментов Имена макросов включим дополнительный столбец Имя макроса. Введем туда в первой строке слово Поиск. В колонке Макрокоманда выберем макрокоманду КЭлементуУправления. В области Аргументы макрокоманды в нижней части окна в качестве Имени элемента введем текст (в этом поле таблицы ТОВАР будет искаться товар с указанным именем). Во второй строчке во втором столбце Макрокоманда выберем из списка макрокоманд команду НайтиЗапись. В аргументах макрокоманды введем с клавиатуры в поле Образец поиска текст = (т.е. будет разыскиваться в поле Наименование таблицы ТОВАР запись, начало названия товара в которой совпадает с введенным в поле Поиск значением). В поле Совпадение выберем из списка элемент «С начала поля». Остальные элементы оставим без изменения. В третьей строке во втором столбце выберем снова макрокоманду КэлементуУправления, в аргументах макрокоманды для Имени элемента введем . Квадратные скобки вводить обязательно!

Созданный нами макрос будет работать следующим образом. Вначале выбирается поле Наименование таблицы ТОВАР для организации поиска. Затем по образцу из поля Поиск формы осуществляется поиск первой по порядку нужной нам записи. Затем фокус опять передается в поле Поиск для возможного продолжения поиска.

Закроем макрос и сохраним его с именем «Поиск товара». Теперь опять откроем форму «Товар» и перетащим туда макрос «Поиск товара». Появится кнопка с соответствующей подписью. Для поиска товара нужно ввести первые буквы названия товара, нажать кнопку «Поиск», будет найдена нужная запись (если она существует). Обратите внимание, то если ничего не вводить в окне Поиск, то при нажатии кнопки будет выдано сообщение об ошибке! В СУБД Access 2007 существуют способы обработки подобных ситуаций – макросы с условиями, но мы их рассматривать не будем.

Но таким образом можно найти лишь первую запись на введенную букву. Нетрудно организовать еще одну кнопку «Поиск далее». Для этого сделаем копию макроса «Поиск товара» через буфер обмена и назовем его «Поиск далее». С помощью конструктора изменим в новом макросе в аргументе строки НайтиЗапись свойство Первое вхождение с Да на Нет, Область поиска – Вниз. Теперь перетащим новый макрос в режиме конструктора в форму «Товар». Теперь будет идти поиск и последующих записей с тем же началом в поле Наименование.

Задание

  1. Создать в форме «Покупатель» аналогичные кнопки для поиска покупателя по началу фамилии.
  2. Создать в форме «Заказ» кнопку поиска записей, имеющих совпадающую с вводимой в специальном поле дату.

Источник:
http://word-office.ru/kak-sdelat-formu-poiska-v-access.html

Макросы Access 2007. Ускорение поиска

Создадим двумя способами кнопку «Поиск фамилии» для быстрого поиска покупателя по фамилии в форме “Покупатель”. Первый способ – использование стандартных возможностей Access 2007. Второй способ – использование макроса.

Читайте также  Простой Web-интерфейс для обращения к базам данных, Data Access Page

Использование стандартных возможностей Access 2007

Откроем форму «Покупатель» в режиме конструктора. С панели элементов перенесем пиктограмму Кнопка в нижнюю часть формы. Будет вызван мастер Создание кнопки. Выберем режимы Категории: Переходы по записями, Действия: Найти запись. Затем на кнопке разместим текст «Поиск фамилии», введя соответствующий текст в поле Текст. Далее в качестве названия кнопки введем ФИО. При работе с формой “Покупатель” при нажатии кнопки будет вызываться окно стандартного поиска и замены Access.

Замечание. Если не запускается мастер создания кнопок, его надо включить на панели инструментов.

В результате на форме появится кнопка «Поиск фамилии», при нажатии на которую выскакивает стандартное окно «Поиск и замена». При поиске кроме образца надо указать поле, в котором необходимо найти данные, а также указать степень совпадения.

Использование макроса

Для примера создадим подобную кнопку поиска для формы «Товар». Создадим поле для ввода начала названия товара. Откроем эту форму в режиме конструктора и перетащим туда пиктограмму Поле в нижнюю часть формы. Вызовем список свойств правой части поля (первоначально оно имеет обозначение Свободный) щелчком правой кнопки мыши и заменим Имя на Поиск данное имя в дальнейшем будет использоваться. В строке состояния (свойство Текст строки состояния) введем текст: «Введите название товара или его первые буквы». Вызовем список свойств для левой части Поля (Надписи) и заменим Подпись также на Поиск. Закроем форму.

Дальше создадим макрос «Поиск». Он будет состоять из трех макрокоманд. Откроем вкладку Создание, нажмем кнопку Макрос. С помощью команд панели инструментов Имена макросов включим дополнительный столбец Имя макроса. Введем туда в первой строке слово Поиск. В колонке Макрокоманда выберем макрокоманду КЭлементуУправления. В области Аргументы макрокоманды в нижней части окна в качестве Имени элемента введем текст [Наименование] (в этом поле таблицы ТОВАР будет искаться товар с указанным именем). Во второй строчке во втором столбце Макрокоманда выберем из списка макрокоманд команду НайтиЗапись. В аргументах макрокоманды введем с клавиатуры в поле Образец поиска текст =[Поиск] (т.е. будет разыскиваться в поле Наименование таблицы ТОВАР запись, начало названия товара в которой совпадает с введенным в поле Поиск значением). В поле Совпадение выберем из списка элемент «С начала поля». Остальные элементы оставим без изменения. В третьей строке во втором столбце выберем снова макрокоманду КэлементуУправления, в аргументах макрокоманды для Имени элемента введем [Поиск]. Квадратные скобки вводить обязательно!

Созданный нами макрос будет работать следующим образом. Вначале выбирается поле Наименование таблицы ТОВАР для организации поиска. Затем по образцу из поля Поиск формы осуществляется поиск первой по порядку нужной нам записи. Затем фокус опять передается в поле Поиск для возможного продолжения поиска.

Закроем макрос и сохраним его с именем «Поиск товара». Теперь опять откроем форму «Товар» и перетащим туда макрос «Поиск товара». Появится кнопка с соответствующей подписью. Для поиска товара нужно ввести первые буквы названия товара, нажать кнопку «Поиск», будет найдена нужная запись (если она существует). Обратите внимание, то если ничего не вводить в окне Поиск, то при нажатии кнопки будет выдано сообщение об ошибке! В СУБД Access 2007 существуют способы обработки подобных ситуаций – макросы с условиями, но мы их рассматривать не будем.

Но таким образом можно найти лишь первую запись на введенную букву. Нетрудно организовать еще одну кнопку «Поиск далее». Для этого сделаем копию макроса «Поиск товара» через буфер обмена и назовем его «Поиск далее». С помощью конструктора изменим в новом макросе в аргументе строки НайтиЗапись свойство Первое вхождение с Да на Нет, Область поиска – Вниз. Теперь перетащим новый макрос в режиме конструктора в форму «Товар». Теперь будет идти поиск и последующих записей с тем же началом в поле Наименование.

Задание

  1. Создать в форме «Покупатель» аналогичные кнопки для поиска покупателя по началу фамилии.
  2. Создать в форме «Заказ» кнопку поиска записей, имеющих совпадающую с вводимой в специальном поле дату.

Связанные статьи

Рекомендую прочесть статьи, связанные с данной:

Источник:
http://aermolenko.ru/2015/10/makrosy-access-2007-uskorenie-poiska/

Поиск записей

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

По мере роста базы данных поиск определенных записей приведет к более быстрому взгляду на таблицу в режиме таблицы. В этой статье описаны пять способов поиска определенных записей в зависимости от потребностей.

В этой статье

Просмотр всех записей

Вы можете просматривать записи с помощью клавиши TAB, чтобы перемещаться по одной записи за раз, чтобы найти определенную запись. Вы также можете просматривать записи в таблице в Режим таблицы с помощью кнопок перехода по записям. Кнопки перехода по записям доступны в нижней части таблицы или формы.

1. Переход к первой записи

2. Переход к предыдущей записи

3. Текущая запись

4. Переход к следующей записи

5. Переход к последней записи

6. Открытие новой (пустой) записи

7. индикатор фильтра

При щелчке в поле Текущая запись можно ввести номер записи, а затем нажать КЛАВИШу ввод, чтобы перейти к этой записи. Номер записи помещается последовательно, начиная с начала формы или таблицы. Он не соответствует никакому значению поля.

Чтобы узнать, применен ли фильтр, см. кнопку индикатор фильтра. Если фильтр не применен или все фильтры сняты, то фильтр неотображается. При отображении фильтра можно нажать эту кнопку, чтобы удалить фильтр. Аналогично, если он отображается без фильтрации, вы можете нажать эту кнопку, чтобы применить последний использованный фильтр, если таковой имеется.

При вводе текста в поле поиска первое совпадающее значение выделяется в режиме реального времени по мере ввода каждого символа. Эту функцию можно использовать для быстрого поиска записи с совпадающим значением.

Переход к определенной записи

Если вы знаете, какую запись нужно найти, можно перейти к определенной записи в Access. Поле Перейти позволяет выбрать определенную запись из раскрывающегося списка и обычно добавляется в формы.

Чтобы перейти к определенной записи, щелкните стрелку справа от поля Перейти и выберите запись из раскрывающегося списка.

Примечание: Если вы знаете первые несколько символов записи, к которой вы хотите перейти, можно ввести их в поле Перейти , чтобы быстро найти нужную запись.

В поле Перейти отображается достаточно данных, чтобы однозначно определить каждую запись. При выборе записи из списка Access отображает остальные данные этой записи в главной области формы.

Поиск конкретной записи

Вы можете искать определенную запись в таблице или форме с помощью вкладки найти диалогового окна Поиск и замена . Это эффективный выбор для поиска определенной записи, если запись, которую нужно найти, удовлетворяет определенным условиям, например условиям поиска и операторам сравнения, например «равно» или «Contains».

Примечание: Диалоговое окно Поиск и замена можно использовать только в том случае, если в таблице или форме отображаются данные. Это справедливо даже в том случае, если нет видимых записей, так как применен фильтр.

Откройте таблицу или форму, а затем выберите поле, в котором нужно выполнить поиск.

На вкладке Главная в группе Найти нажмите кнопку Найти. Также можно нажать клавиши CTRL+F.

Откроется диалоговое окно Поиск и замена с выбранной вкладкой найти .

В поле найти введите значение, которое нужно найти.

Чтобы изменить поле, в котором нужно выполнить поиск, или выполнить поиск по всей базовой таблице, выберите соответствующий параметр в списке Искать в .

Совет: В списке Совпадение представлен оператор сравнения (например, «равно» или «Contains»). Чтобы расширить область поиска, в списке совпадение выберите любую часть поля.

В списке Поиск выберите все, а затем нажмите кнопку Найти далее.

Читайте также  Как сделать связи в access 2010?

При выделении элемента, для которого выполняется поиск, нажмите кнопку Отмена в диалоговом окне Поиск и замена , чтобы закрыть диалоговое окно. Выделяются записи, соответствующие условиям

Дополнительные сведения об использовании диалогового окна Поиск и замена см. в статье Использование диалогового окна Поиск и замена для изменения данных.

Фильтр для отображения ограниченного количества записей

Вы можете отфильтровать, чтобы просмотреть только те записи, которые удовлетворяют определенным условиям, и операторам сравнения. Например, чтобы быстро ограничить отображаемые записи, щелкните правой кнопкой мыши поле, значение которого нужно сопоставить, а затем выберите пункт равно, не равно, содержитили не содержится в нижней части контекстного меню. Фильтр можно включить или отключить, что позволяет легко переключаться между отфильтрованным и неотфильтрованным представлениями одних и тех же данных. В отличие от функции Поиск, фильтр ограничивает только те записи, которые выводятся на экран.

Чтобы применить фильтр, зависящий от выделенного фрагмента, откройте таблицу или форму.

Чтобы убедиться в том, что таблица или форма еще не отфильтрована, на вкладке Главная в группе Сортировка _амп_ фильтр нажмите кнопку Дополнительнои выберите команду Очистить все фильтры, если эта команда доступна.

Перейдите к записи, содержащей значение, которое вы хотите использовать в качестве части фильтра, а затем щелкните внутри столбца (в режиме таблицы) или элемента управления (в режиме формы, отчета или макета). Чтобы отфильтровать по частично выделенному фрагменту, выделите только нужные символы.

На вкладке Главная в группе Сортировка и фильтр нажмите кнопку Выделение и щелкните нужный фильтр.

Чтобы отфильтровать другие поля в зависимости от выделенного фрагмента, повторите шаги 3 и 4.

Создание запроса для поиска определенной записи

Методы, которые можно использовать для поиска и фильтрации записей, очень полезны при поиске определенных записей для дела. Тем не менее может потребоваться регулярно выполнять одинаковые операции поиска и фильтрации. Вместо того чтобы воссоздавать набор для поиска и выполнения фильтров каждый раз, можно создать запрос. Запрос — это мощный и гибкий способ поиска определенных записей, поскольку он позволяет выполнять пользовательские операции поиска, применять настраиваемые фильтры и сортировать записи. Вы можете создавать собственные запросы, которые помогут вам сосредоточиться на определенных записях и отвечать на определенные вопросы. Созданный запрос можно сохранить и повторно использовать, а также использовать для создания форм и отчетов.

При использовании запроса для поиска или фильтрации вы можете использовать условия отбора в зависимости от типа искомых данных. Различные типы сведений хранятся в виде данных разных типов. Например, дни рождения хранятся в виде данных даты и времени, а имена хранятся в виде текстовых данных.

Иногда не удается найти определенную запись, которую вы знаете. Это может произойти при просмотре записей в форме или запросе, не отображающем определенные записи, из-за значения определенного поля. В следующем примере показано, как использовать запрос для поиска записей.

Предположим, что вы используете базу данных, созданную с помощью шаблона «проблемы Access», чтобы отследить проблемы. В таблице «проблемы» есть поле с именем «состояние», которое указывает, является ли проблема активной, разрешенной или закрытой. Чтобы создать запрос, отображающий проблемы со статусом «закрыто», выполните указанные ниже действия.

На вкладке Создание в группе Запросы нажмите кнопку Конструктор запросов.

В диалоговом окне Добавление таблицы дважды щелкните элемент проблемы, а затем нажмите кнопку Закрыть.

В конструкторе запросов дважды щелкните звездочку (*) в таблице » вопросы «. Это помогает убедиться в том, что запрос будет отображать все поля возвращаемых записей.

В первом столбце бланка запроса появится строка поле » проблемы». Это означает, что будут возвращены все поля таблицы «проблемы».

В конструкторе запросов дважды щелкните элемент » состояние » в таблице » вопросы «.

Состояние отображается во втором столбце бланка запроса в строке поля .

Во втором столбце бланка запроса снимите флажок в строке Показать . Это помогает убедиться в том, что запрос не отображает поле состояние.

Если флажок Показать в столбце Состояние не снят, поле состояние будет отображаться дважды в результатах запроса.

Во втором столбце бланка в строке Условие отбора введите = «закрыто». Это критерий поиска. Так вы убедитесь, что запрос возвращает только те записи, для которых значение Status равно «закрыто».

Примечание: В этом примере используется только одно условие поиска. Вы можете использовать несколько условий поиска, добавляя условия к дополнительным полям, а также используя строку » или «, а также дополнительные строки ниже или.

Запрос готов к запуску и выглядит примерно так:

На вкладке Конструктор в группе Результаты нажмите кнопку Выполнить.

Примечание: Если вы уже не начали отслеживать проблемы и, следовательно, содержат данные в таблице «проблемы» — и вы установили по крайней мере одну проблему «закрыто», запрос не возвратит никаких результатов. Однако вы можете сохранить запрос и использовать его в любое время в будущем.

Нажмите сочетание клавиш CTRL+S, чтобы сохранить запрос.

В диалоговом окне Сохранить как введите имя запроса в поле имя запроса , например закрытые проблемы, а затем нажмите кнопку ОК.

Теперь у вас есть запрос, в котором отображаются проблемы со статусом «закрыто».

Дополнительные сведения о том, как создавать запросы для поиска записей, см. в статье Создание простого запросана выборку.

Дополнительные сведения об условиях поиска и фильтрации см. в статье примеры условий запроса.

Источник:
http://support.microsoft.com/ru-ru/office/%D0%BF%D0%BE%D0%B8%D1%81%D0%BA-%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D0%B5%D0%B9-e186238d-e4d7-4918-92a0-1236661c6f58

Создание формы для поиска записи из таблицы

Создание формы поиска на сайте. Почему не выводится результат поиска при вводе символов в поле поиска?
Добрый день! Создаю форму поиска с всплывающими подсказками. Попробую, выложить строки кода.

Создание формы для поиска
Добрый день. Я только начала работать с программой access. Уже научилась создавать запросы и формы.

Создание формы для поиска
Доброго времени суток коллеги! Как то понадобилось мне создать форму для поиска по всем записям.

Создание формы и скрипта для поиска
Нужна ваша помощь так как я это плохо разбираюсь , у меня вот например есть номера паспортов.

Очень крутой способ, спасибо!

Подскажите пожалуйста, как еще можно реализовать фильтр по множественному выбору значений одного поля?
То есть, если нужно выбрать сразу несколько кодов ОКПО?

К примеру создать на форме список(поставив в свойствах списка Несвязное выделениеСо связным выбором) с ОКПО.
И менять источник записей в зависимости от выбранных значений в списке.

См. приложение.
Зажав Ctrl выбираешь в списке несколько ОКПО, во втором списке данные будут отфильтрованы.

Не понял.
ИЛИ выбирать несколько значений(хоть числовых, хоть текстовых, не важно)
ИЛИ при вводе(т.е. событие Change поля) значения в поле менять значения в списке..

Или Вы имеете ввиду, что:
1. Выбрать несколько значений ОКПО
2. Вводя во второе поле значение, фильтровать исходя из УЖЕ выбранных ОКПО?

Виктор, вероятно, что есть и лучше(быстрее по выполнению) способ.
Это был лишь вариант..

Этот код можно поместить на кнопку или на процедуру AfterUpdate каждого из контролов условий формы

Функция NZ здесь применена для выполнения условия показывать все, если какой-то параметр не выбран.
Код для населенного пункта также учитывает возможность выбрать все, если он не задан.

Имена контролов формы и полей таблицы следует исправить на истинные.

И последнее. Вместо текстового имени населенного пункта, лучше использовать его числовой код из справочника населенных пунктов. Если такого справочника нет, надо его создать. Иначе вас ждут неожиданные и трудноуловимые ошибки в разном написании одного и того же пункта

Источник:
http://www.cyberforum.ru/ms-access/thread563086.html

Microsoft Access «Разработка формы общего просмотра для базы данных, состоящей из двух связных таблиц»

Развивающие: уметь создать базу данных из двух связных таблиц, создать форму общего просмотра этих таблиц.

Воспитывающие: развитие самостоятельности, внимательности, аккуратности, умение работать индивидуально по заданной теме.

Рабочие станции учащихся. ОС Windows XP, Microsoft Office.

Угринович Н.Д. Информатика и информационные технологии. Учебник для 10-11 классов / Н.Д. Угринович. — М.: БИНОМ. Лаборатория знаний, 2007.

Требуется разработать Информационно-Поисковую Систему (ИПС) «Изделия Столярной мастерской ПЛ12»

База данных должна содержать две таблицы «Изделия» и «Комплектующие»

Таблица «Изделия» содержит поля

  • Код изделия -числовое, ключевое
  • Наименование изделия — текстовое
  • Изображение изделия — OLE
Читайте также  Перекрестные запросы

Таблица «Комплектующие» содержит поля

  • Код изделия -числовое
  • Наименование материала — текстовое
  • Количество — числовое
  • Единица измерения — текстовое
  • Цена -денежное

Таблицы связаны по полю КОД связью один ко многим.

Занести данные — пять изделий и к каждому его комплектующие.

Создать форму общего просмотра, подчиненную. В ней создать кнопки:

  • Следующая запись
  • Предыдущая запись
  • Выход
  • Добавление
  • Удаление
  • Список всех изделий
  • Создать общее меню ИПС

1. Создадим Базу Данных «Мастерская»

Открыть программу ACCESS

2. Щёлкнуть по строке Создать файл (в правой части окна)

В открывшемся окне, в правой части

щелкнуть по строке Новая база данных

В открывшемся окне, в строке Имя файла, с клавиатуры ввести Мастерская

Откроется стандартное рабочее окно программы ACCESS

1. Для создания таблиц в окне Объекты щёлкнем по строке Таблицы, в окне справа по строке Создание таблицы в режиме конструктора

В строке имя поля набираем имя первого поля таблицы Изделия — это Код, нажимаем клавишу Ввода (Enter), курсор переместится во второй столбец Тип данных. Щёлкнуть по кнопке N , откроется список всех типов полей, выбрать числовое. В стандартной строке щёлкнуть по кнопке ключевое поле

Кнопкой ввода возвращаем курсор в столбец Имя поля. Аналогично описываем все поля таблицы Изделия

Закрываем окно Таблица1, щёлкнув по кнопке На запрос о сохранении отвечаем ДА

В открывшемся окне Сохранение с клавиатуры вводим имя таблицы Изделия и щёлкаем ОК

Появится стандартное окно программы ACCESS

Аналогично создадим таблицу Комплектующие

На запрос о создании ключевых полей ответить НЕТ

Установим связь между таблицами по полю Код. Щёлкаем по значку Схема данных

Выделяем таблицу Изделия и щёлкаем по кнопке Добавить, выделяем таблицу Комплектующие и щёлкаем по кнопке Добавить, затем щёлкаем по кнопке Закрыть.

Откроется следующее окно

Установить курсор на поле Код в таблице Изделия и не отпуская левой кнопки мыши перетащить курсор на поле Код в таблице Комплектующие, отпустить курсор.

Проставить галочки (просто щёлкнуть мышью) во все маленькие окнам

И щёлкнуть по кнопке Создать. Откроется окно

Закрыть окно Схема данных (Щёлкнуть по кнопке в правом верхнем углу окна). На запрос о сохранении ответить ДА.

Заполнить таблицы Изделия и Комплектующие. В стандартном окне Access (Рисунок 10) быстро дважды щёлкнуть по таблице Изделия и ввести данные. В поле Изображение нажать правую кнопку мыши, в контекстном меню выбрать Вставить объект. В открывшемся окне выбрать Вставить из файла и в окне Обзор указать полный путь к файлу с рисунком изделия. Аналогично заполнить таблицу Комплектующие

Для создания подчиненной формы общего просмотра выбираем объект Форма и щёлкаем по строке создание формы с помощью мастера

В строке таблицы и запросы выбираем таблицу Изделия и стрелкой >> выбираем все поля этой таблицы. Затем выбираем таблицу Комплектующие и стрелкой > по одному выбираем все поля, кроме Кода и щёлкаем кнопку Далее.

Щёлкаем по строке Подчиненные формы и затем по кнопке Далее. Откроется окно

Выбираем вид Табличный и щёлкаем Далее Откроется окно

Выбираем любой стиль, например Официальный и щёлкаем Далее. Откроется окно

В строке Форма с клавиатуры вводим имя формы Общий просмотр и щёлкаем Готово

Откроется окно формы Общий просмотр

Создадим в ней кнопку Предыдущая запись, для чего откроем форму Общий просмотр в режиме Конструктор. Выбираем объект Формы, выделяем форму Общий просмотр, щёлкаем по кнопке Конструктор

В панели элементов выбираем значок Кнопка и рисуем кнопку в Форме, откроется окно

Выбираем Категорию Переходы по записям, Действие Предыдущая запись, щёлкаем Далее. Откроется окно

Выберем рисунок Указатель влево и щёлкнем Готово. Наша кнопка в Форме примет вид

Аналогично создадим Кнопку Следующая запись. Для создания кнопок Добавления и Удаления выбираем Категорию Обработка записей. Действие Добавить запись и Удалить запись. Для Кнопки выхода из Формы выбираем Категорию Работа с формой, Действие Закрыть форму. В результате Форма Общий просмотр примет вид

Создадим окно, открывающее список всех изделий. В панели элементов выбираем значок Поле со списком и рисуем его справа от рисунка

Щёлкаем в нём по строке Поиск записи в форме на основе значения, которое содержит список и затем Далее. Откроется следующее окно

Выделяем поле Наименование и стрелкой > выбираем его, щёлкаем Далее. Откроется окно

Щёлкаем Далее, в открывшемся окне в строке задайте подпись с клавиатуры вводим Выбор изделия и щёлкаем Готово

Форма примет вид

Для работы с Формой закрыть её в режиме Конструктор, щёлкнув в правом углу по кнопке и в стандартном окне ACCESS (рисунок 10) выбираем объект Формы и дважды щёлкаем по форме Общий просмотр.

Источник:
http://urok.1sept.ru/%D1%81%D1%82%D0%B0%D1%82%D1%8C%D0%B8/602762/

Как сделать форму поиска в access?

115 просмотра

1 ответ

В настоящее время я пытаюсь сделать форму поиска для моей базы данных. Я хочу поместить его в форму навигации (поэтому я слышал, что не могу использовать разделенную форму). В настоящее время у меня есть форма с 4 текстовыми полями и одним комбинированным полем для в общей сложности 5 критериев для поиска с отдельной кнопкой для каждого. Ниже приведен запрос, основанный на моей таблице. Это то, что я сделал до сих пор

Я бью стену о том, как на самом деле выполнить поиск, хотя. Я никогда не использовал доступ до этого проекта и понятия не имею, как использовать VBA (но я знаю другие языки). Можно ли выполнить поиск с помощью макросов? Если нет, то как мне выполнить подпроцедуру поиска?

плюса

То, как вы подходите к этому, состоит в том, чтобы создать форму поиска, разработать и протестировать форму поиска. Получите это работает? Затем вы можете перетащить эту рабочую форму в существующий «набор форм навигации».

Существует множество способов сделать это — вы ограничены только воображением. Тем не менее, общая настройка заключается в создании «основной» формы. Эта основная форма может иметь несколько текстовых полей для ввода значений поиска. А затем вы используете мастера для создания формы «результатов» (хорошая форма, в которой вы отображаете результаты, чтобы пользователь мог видеть + выбирать результаты).

На самом деле, вам действительно не нужно использовать форму + субформа, но я нахожу, что это часто работает несколько лучше, чем размещение полей «критериев» в области заголовка формы.

Итак, создайте основную форму — эта форма не привязана (не привязана ни к одной таблице в системе). Развлекайся, выкладывай форму как хочешь.

Затем используйте мастера, чтобы создать форму из нескольких элементов. Получите эту форму с красивыми столбцами. Теперь, когда основная форма находится в режиме разработки, просто перетащите и отпустите в форме «Отображение результатов».

В результате получается форма доступа, которая выглядит следующим образом:

Выше отметьте, как пользователь «набирал» по некоторым критериям.

Таким образом, вы помещаете некоторый код в текстовое поле «после» события обновления. Это может выглядеть так:

dim strSql в виде строки

strSql = «select * from tblCustomer, где LastName имеет значение» & me.txtLastName & «*»

Таким образом, мы «строим» SQL на лету и «заполняем» SQL прямо в форме для отображения результатов.

Обратите внимание, что в приведенной выше форме элементов contines у нас есть кнопка «просмотр» или «редактирование», при нажатии которой можно запустить детальную форму для ОДНОЙ выбранной записи. В моем примере я использовал значок «очки» для кнопки. Код за этим пунктом:

Docmd.OpenForm «frmEditDetails» . «id =» & me! Id

edit: строка sql должна быть правильной, поэтому выше она должна быть:

Так что ОЧЕНЬ мало кода требуется. Все остальное — все, что вам нравится в плане того, как вы выложите пользовательский интерфейс.

Источник:
http://issue.life/questions/51640054